1:为什么结果是foo && baz
不是1?因为 true 是 1。
var foo = 1;
var baz = 2;
foo && baz; // returns 2, which is true
2:有两个优点console.log(foo + +bar);
,它们的含义是什么?
var foo = 1;
var bar = '2';
console.log(foo + +bar);
那是因为&&
(逻辑与) 运算符返回它计算的最后一个操作数的值。自从foo
is true
,它必须评估bar
确定表达式的结果(只会是true
if bar
也是true
).
相反的情况会发生||
(逻辑或) 操作员。在这种情况下,自从foo
is true
,已知表达式的结果是true
无需评估bar
,所以值foo
将被退回。
关于你的第二个问题,一元+
运算符允许转换字符串'2'
进入数字2
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)