Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:false&&;假就是假?_Javascript_Operators_Boolean Logic - Fatal编程技术网

Javascript:false&&;假就是假?

Javascript:false&&;假就是假?,javascript,operators,boolean-logic,Javascript,Operators,Boolean Logic,所以,我做了一些搜索,看起来它还没有被要求,但我可能是错的 合乎逻辑 false && false === true false && true === false true && false === false true && true === true 但是 javascript的情况似乎并非如此。我在控制台中运行了上述操作,这是我从FireFox&&Chrome获得的: false && false //co

所以,我做了一些搜索,看起来它还没有被要求,但我可能是错的

合乎逻辑

false && false === true
false && true === false
true && false === false
true && true === true
但是

javascript
的情况似乎并非如此。我在
控制台中运行了上述操作,这是我从FireFox&&Chrome获得的:

false && false //console output: false
false && true //console output: false
true && false //console output: false
true && true //console output: true
我已经找到了一份工作,但真的吗?为什么?我认为这是标准行为


它甚至说,
逻辑AND&&
false和false在逻辑上是错误的。

每次你用AND设置一个错误的表达式,等式的其余部分都不重要,因为每个表达式都必须是真的,结果才是真的

false和true表示:

这两个方程式都有效吗?“假”和“真”是真的吗? 如果其中任何一个失败了,那么它就是错误的

另一个例子:

真| |(真与假)

在本例中,您的阅读方式如下:

“真的”是真的还是。。。“真”和“假”对吗


第一个方程的计算结果为真,因此无需验证第二个方程(因为其中一个方程已经为真),事实上它不是真的。用于优化。

运算符具有从左到右的关联性

意味着如果第一个值为truthy(可强制为true),它将计算第二个值,如果第二个值为truthy,则计算第三个值..直到最后一个值成为表达式的结果

由于运算符的第一个元素是falsy(可强制为false),因此表达式立即返回false


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

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

如果表达式的左侧是“truthy”,则表达式将返回右侧

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


我已经写了一篇关于运营商的博客文章。它可以详细解释发生了什么。

false&&false==true
嗯?你为什么这么想?你在想XOR@SLaks因为我有一天你盯着屏幕看得太久,这就是为什么。你在想equivalent@SLaks我只能为自己说话,但我不自觉地认为我把它解释为(假==假)=真。这是正确的。只有true&&true==true。