【发布时间】:2011-06-22 17:23:45
【问题描述】:
我的问题很简单,如果我声明一个带有一系列 OR 子句的 IF 语句,JavaScript 会读取所有 OR 还是停在第一个满足的 OR 处?
提前致谢。
【问题讨论】:
标签: javascript short-circuiting
我的问题很简单,如果我声明一个带有一系列 OR 子句的 IF 语句,JavaScript 会读取所有 OR 还是停在第一个满足的 OR 处?
提前致谢。
【问题讨论】:
标签: javascript short-circuiting
【讨论】:
它应该只处理第一个返回 true 的 OR:
if (a || b || c) {
}
如果a为假,b为真,c为真,则处理到b。
【讨论】:
function foo() {
return true;
}
function bar() {
alert("bar");
}
foo() || bar(); // true - no alert
bar() || foo(); // true - alert of "bar"
【讨论】:
如果满足第一个条件,则不计算or的其他条件
【讨论】: