(false==false==true)怎么可能是真的
How can (false == false == true) be true
在编程时,if语句中出现了意外结果。
这个代码怎么会提醒真的?我在W3S没有找到任何可以帮助我的东西,我真的很想知道为什么这些警报是"真实的"
window.alert(false == false == true); //alerts true
window.alert(false == (false == true));//even this alerts true
第一种情况
false == false == true
将被评估为
(false == false) == true
因为默认情况下,表达式是从左到右计算的。降低到
true == true
因为CCD_ 1实际上等于CCD_。这就是为什么它被评估为true
。
第二种情况
false == (false == true)
减少为
false == false
因为CCD_ 4不等于CCD_。这就是为什么整个表达式是true
,因为false
等于false
。
执行将从左手边开始。
window.alert(false == false == true);
首先CCD_ 9为真。则CCD_ 10为真。
在第二种情况下,因为您使用的是括号false
1,它将首先执行。
false == true
为假。
则false == false
为真。
false == true
是真的吗?我认为这显然不是真的,因此(false == true)
是false
,因此是false == (false == true)
(正如我们已经注意到的,第二部分是假的)。
至于第一个例子——实际上,无论评估顺序如何,它都是正确的(我把这留给你做一个合乎逻辑的练习)。仍然javascript保证求值顺序从左到右,因此此表达式与(false == false) == true
相同。我再次让你来证明这是真的。
false == false == true
false == false
,这就是false
0,等于true
。
false == (false == true)
false == true
,这就是false
,等于false
。
第一行-从左到右比较false == false
,即true
,然后与true
比较,返回true
第二行-从左到右比较(false == true)
,即false
,然后比较false
和false
返回true
两者都是正确的。
案例1:false == false == true
这类似于(false == false) == true
评估是CCD_ 36和CCD_ 37
案例2:false == (false == true)
这类似于(false == true) == false
评估是false
0和false == false IS true
希望这能帮助
- 同一项怎么可能在一个实例中未定义,却在另一个实例上定义
- (false==false==true)怎么可能是真的
- 不在443上运行https怎么可能呢
- 这个Javascript变量怎么可能有价值
- Extjs 4.2.1隐藏字段-inputEl.dom怎么可能未定义
- 桌面 HTML + CSS + JS 应用程序?这怎么可能
- “功能”就是功能,这怎么可能
- 开放层:怎么可能.功能覆盖在 3.13v 中替换
- JS:字符串真的是基元类型吗?如果是这样,这怎么可能
- 尝试通过php include放置png图像..这怎么可能
- 我怎么可能完成这种Javascript突出显示技术
- 我传递给函数的变量在该函数中怎么可能是未定义的
- 在JavaScript中:如果Object是一个函数,那么如果一个函数是一个对象的实例,它怎么可能呢
- Javascript:一个带键的数组怎么可能呢
- 函数正在重写变量.这怎么可能
- 怎么可能object==这个,但是object.member!=this.member在Javascript中
- 一个有内容的iFrame怎么可能有一个未定义的contentDocument对象
- leaflet.js:setView()完成动画时引发的事件.这怎么可能
- 在chrome控制台的Html是不同的Html在浏览器..它怎么可能
- mongoDB中的文档怎么可能被映射但没有减少呢