Javascript: false && false 是假的吗?

Gib*_*Top -2 javascript boolean-logic operators

所以,我做了一些搜索,看起来还没有被问到,但我可能是错的。

逻辑上

false && false === true
false && true === false
true && false === false
true && true === true
Run Code Online (Sandbox Code Playgroud)

然而

似乎并非如此javascript。我在上面运行了console,这是我从 FireFox && Chrome 得到的:

false && false //console output: false
false && true //console output: false
true && false //console output: false
true && true //console output: true
Run Code Online (Sandbox Code Playgroud)

我已经找到了解决方案,但认真的?为什么?我认为这是标准行为。

它甚至在Java文档中logical AND | &&.

Max*_*nna 7

false 和 false 在逻辑上是错误的。


Arn*_*wal 6

使用运算符的表达式的结果&&是根据以下规则确定的:

如果表达式的左侧为“falsey”,则表达式将返回左侧。

如果表达式的左侧为“true”,则表达式将返回右侧。

就是这样。因此在 中false && false,左侧为“falsey”,因此表达式返回左侧false

我实际上写了一篇关于||的博客文章 和 &&运算符。它可以详细解释发生了什么。