据我所知,逻辑上&&
工作原理如下
var test = false;
var foo = test && 42;
这段代码,将分配42
to foo
only如果第一个条件被评估为true
。所以在这个例子中,foo
将保持其当前值。
我想知道为什么这个片段根本不起作用:
var test = "";
var foo = test && 42;
Now, foo
从中获取值test
分配的。我很困惑。这空字符串是 Javascript 之一错误的价值观,那么为什么会&&
在这种情况下操作员会失败吗?
有人可以帮我看看这个的规格吗?
你对运营商有什么误解。
foo = x && y
will always assign foo
.
The &&
运算符计算其最左边的“假”操作数。
false && 42
评估结果为 false;"" && 42
评估为""
.
var foo = test && 42;
分配false
to foo
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)