does not fire the alert if("-6ren">
gpt4 book ai didi

javascript 真假

转载 作者:行者123 更新时间:2023-11-30 08:02:01 29 4
gpt4 key购买 nike

我已经知道以下行为,但有人能告诉我为什么会这样吗?谢谢。

if("hello"==true)alert("it's true!"); //-> does not fire the alert
if("hello"==false)alert("it's true!"); //-> does not fire the alert
if("hello")alert("it's true!"); //-> fires the alert

最佳答案

在前两个中,您显式地将一个字符串与 bool 常量进行比较,而该字符串显然不等于任何一个。在第三行中,您正在测试字符串的“真实性”,并且任何非空字符串在该上下文中的计算结果为 true

在字符串和 bool 值的比较中,Abstract Equality Comparison Algorithm指示比较应作为数字比较进行。因此 true 被转换为 1,false 被转换为 0; "hello" 将是 NaNNaN 永远不会== 到任何东西。

关于javascript 真假,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25607213/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com