【发布时间】:2016-11-13 14:13:59
【问题描述】:
即使 if 语句为假,下面的 else 语句也不会执行。我想我犯了一些非常基本的错误,但不知道是什么。
var a = ["king","queen","100"];
for (var i=0; i<a.length; i++) {
if (a[i] === "king" || "queen"){
console.log("monarch");
}
else {
console.log("The number is: "+ parseInt(a[i]));
}
}
// This prints out "monarch" 3 times
【问题讨论】:
-
"queen" 是一个真实值。这样做
a[i] === "king" || a[i] === "queen" -
感谢它的工作,但国王和王后不应该为 a[2] 做假
-
是的
a[2] === "king" || a[2] === "queen"是false。 -
你不需要
parseInt(a[i]),因为你在字符串中添加了一个字符串。 -
请注意,当您说
a[i] === "king" || "queen"时,您是在问a[i] 是否等于“king”,而在您问另一个问题之后,字面意思是"queen",但您想问@987654328 @。所以你的条件应该像@OriDrori 说的那样
标签: javascript loops