Javascript 为什么不是';这个变量不是未定义的吗?
我对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 *
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)){
?(或者您可以只使用=
)是否尝试使用调试器查看发生了什么?