首页 > 解决方案 > 为什么这个变量没有定义?

问题描述

我对 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);

控制台将数字记录为 4268,它应该未定义,因为 taxableIncome 只有 1000,因此不符合 if 要求,因此不应运行内部代码。

任何帮助,将不胜感激 :)

标签: javascriptvariablesif-statement

解决方案


你不应该有;after if。通过指定;,您基本上是在终止语句并使代码块 ( {...}) 独立于条件:

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);


推荐阅读