Javascript (false==false==true)怎么可能是真的
当我在编程时,我在if语句中得到了一个意想不到的结果 这段代码究竟是怎么做到的? 我在W3S没有找到任何可以帮助我的东西,我真的很想知道为什么这些警报是“真的”Javascript (false==false==true)怎么可能是真的,javascript,boolean,Javascript,Boolean,当我在编程时,我在if语句中得到了一个意想不到的结果 这段代码究竟是怎么做到的? 我在W3S没有找到任何可以帮助我的东西,我真的很想知道为什么这些警报是“真的” false==true是真的吗?我认为这显然不是真的,因此(false==true)是false,因此false==(false==true)(我们已经注意到第二部分是假的) 至于第一个例子——实际上,无论评估的顺序如何,它都是正确的(我把它作为一个逻辑练习留给你)。但是javascript保证计算顺序是从左到右的,因此该表达式与(fa
false==true
是真的吗?我认为这显然不是真的,因此(false==true)
是false
,因此false==(false==true)
(我们已经注意到第二部分是假的)
至于第一个例子——实际上,无论评估的顺序如何,它都是正确的(我把它作为一个逻辑练习留给你)。但是javascript保证计算顺序是从左到右的,因此该表达式与
(false==false)==true
相同。我再次让你们来证明这是真的 第一例
false == false == true
false == (false == true)
将被评估为
(false == false) == true
因为,默认情况下。减少到
true == true
因为false
实际上等于false
。这就是为什么它的计算结果为true
第二种情况
false == false == true
false == (false == true)
减少到
false == false
因为false
不等于true
。这就是为什么整个表达式是true
,因为false
等于false
false==false
,这是true
,等于true
false==true
,这是false
,等于false
执行将从左侧开始
window.alert(false == false == true);
首先,false==false
为true。然后true==true
为true
在第二种情况下,因为您使用了括号()
,这将首先执行
false==true
为false
然后
false==false
为真。第一行-从左到右比较false==false
为true
,然后与true
比较返回true
第二行-从左到右比较(false==true)
,即false
,然后比较false
和false
返回true
两者都是正确的
案例1:false==false==true
这类似于
(false==false)==true
评估是
false==false为true
和true==true为true
案例2:false==(false==true)
这类似于
(false==true)==false
评估是
false==true为false
和false==false为true
希望这有帮助,因为
(false==true)
==false和false==false
equal-true如果我指出你也不能写2<3<4
,但你需要写2<3&&3<4
,这有帮助吗,你应该知道你不必一直使用window.alert
来调试东西。在Chrome中,ctrl+shift+j将打开开发控制台,您可以在其中评估javascript。在Firefox中,ctrl+shift+i。或者只是使用,甚至不用麻烦浏览器。而且MDN比W3S更受欢迎。
window.alert(false == false == true);