为什么在JavaScript中,“ if('0'== false)”等于false,而在“ if(0)”语句中却为true?
让我们一一看条件-
if(‘0’ == false)
它遵循以下规则-
If Type(y) is Boolean, return the result of the comparison x == ToNumber(y)
==确实会强制输入。这意味着需要进行显式类型转换以匹配两个操作数的类型。左侧的“0”被转换为数字0。在比较两个数字时,由于0等于0,所以结果为true。在这种情况下,这是行不通的,因为它不暗示'0'字符串的伪善/虚假性质,因为它在比较之前就被强制了。
如果
这将检查字符串是否为null或为空,而不是是否为零。永远记住,非空字符串为true。这里不使用类型强制,因为可以根据字符串的优劣将字符串评估为伪或伪。
热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短