a = 1;
b = "1";
if (a == b && a = 1) {
console.log("a==b");
}
Run Code Online (Sandbox Code Playgroud)
上面的Javascript代码会导致if Google Chrome 26.0.1410.43 中的语句出错:
未捕获的ReferenceError:赋值中的左侧无效
我想这是因为该变量a在声明的第二部分&&,a=1不能分配.但是,当我尝试下面的代码时,我完全糊涂了!
a = 1;
b = "1";
if (a = 1 && a == b) {
console.log("a==b");
}
Run Code Online (Sandbox Code Playgroud)
为什么一个陈述是对的,但另一个陈述是错的?