Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么不是';这个变量不是未定义的吗?_Javascript_Variables_If Statement - Fatal编程技术网

Javascript 为什么不是';这个变量不是未定义的吗?

Javascript 为什么不是';这个变量不是未定义的吗?,javascript,variables,if-statement,Javascript,Variables,If Statement,我对JavaScript非常陌生,因此,如果答案显而易见,我深表歉意,但我正在测试一个脚本,不幸的是,我无法弄清楚到底发生了什么 let taxableIncome = 1000; let Income; let y; if(taxableIncome == 18201 || taxableIncome >18201 && taxableIncome <37001); { y = taxableIncome - 18200 Income = y - 0.19 *

我对JavaScript非常陌生,因此,如果答案显而易见,我深表歉意,但我正在测试一个脚本,不幸的是,我无法弄清楚到底发生了什么

let taxableIncome = 1000;
let Income;
let y;

if(taxableIncome == 18201 || taxableIncome >18201 && taxableIncome 
<37001); {
 y = taxableIncome - 18200
Income = y - 0.19 * y + 18200
}

console.log(Income);
应纳税所得额=1000;
让收入;
让y;
如果(应纳税所得额==18201 | |应纳税所得额>18201&&

如果
,则在
之后不应该有
。通过指定
,基本上就是终止语句并使代码块(
{…}
)独立于条件:

应纳税所得额=1000;
让收入;
让y;
如果(应纳税所得额==18201 | |)(应纳税所得额>18201&&taxableIncome

删除if条件后的分号:


如果(taxableIncome==18201 | | taxableIncome>18201&&taxableIncome,这将为您提供预期的结果。您需要删除if语句后的

应纳税所得额=1000;
让收入=零;
设y=null;
if(应纳税所得额>=18201和应纳税所得额<37001){
y=应纳税所得额-18200
收入=y-0.19*y+18200
}

console.log(Income);
当您想要比较的每一对布尔表达式似乎会给您带来意外的结果时,您应该在其周围加上括号。另外,
后面的
if
不应该有分号。您的意思是
if(taxableIncome==18201 | |(taxableIncome>18201&&taxableIncome<37001)){
?(或者您可以只使用
=
)是否尝试使用调试器查看发生了什么?