Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
为什么1 && true得到一个布尔值true,却0 && true得到一个数字0?我在 Chrome 控制台和 Firebug 中对其进行了测试。
1 && true
true
0 && true
0
因为如果为 false 则expr1 && expr2返回expr1,否则返回expr2。
expr1 && expr2
expr1
expr2
因为这就是 Javascript 中逻辑运算符的行为方式。
附加参考:ECMA 262,第 83 页。
&& 运算符通常称为逻辑与。如果第一个操作数为 false、null、undefined、"" 或数字 0,则返回第一个操作数。否则,它返回第二个操作数