Javascript:false && false是false?
所以,我已经做了一些搜索,看起来它还没有被问到,但我可能是错的。Javascript:false && false是false?
按道理
false && false === true
false && true === false
true && false === false
true && true === true
无论其
它似乎并不像这是javascript
的情况。我跑了上面的console
,这是我从火狐& &铬得到:
false && false //console output: false
false && true //console output: false
true && false //console output: false
true && true //console output: true
我已经找到了solution但严重?为什么?我会认为这是标准行为。
它甚至说在Java
documentation那logical AND | &&
。
错误和错误在逻辑上是错误的。
这是正确的。只有真正&&真实==真实。 –
每次使用AND设置一个错误表达式时,其余方程无关紧要,因为每个表达式必须为TRUE才能使结果为真。
假& & true表示:
都是方程有效?是“假”而“真”是真的? 如果其中任何一个失败,那么它的虚假
另一个例子:
真正||在这种情况下(真& &假)
,你这样写的:
是“真”真的还是......“真”与“假”真的吗?
第一个被评估为真,所以不需要验证第二个等式(因为其中一个已经是真的),实际上并不需要。进行优化。
&&
运算符具有从左到右的关联性。
意思是如果第一个值是truthy(强制为真)它将评估第二个,如果第二个是真的第三个..直到最后一个将是表达式的结果。
由于运算符的第一个元素是伪造的(强制为false)表达式立即返回false。
使用&&
运算符的表达式的结果的基础上确定这些规则:
如果表达式的左侧是“falsey”,表达式将返回左侧。
如果表达式的左边是“truthy”,表达式将返回右边。
就是这样。所以在false && false
中,左边是“假”,所以表达式返回左边false
。
我已经写了一篇关于|| and &&运营商的博文。它可以详细解释发生了什么。
'false && false === true'咦?为什么你这么想? – SLaks
为什么你会看Java文档,为什么JavaScript(**完全不同的语言**)做了什么? –
你正在考虑XOR –