javascript – 空数组为false,但在IF语句中返回true

前端之家收集整理的这篇文章主要介绍了javascript – 空数组为false,但在IF语句中返回true前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Empty arrays seem to equal true and false at the same time5个
这返回true:
[] == false

但在这里,警报叫:

if([]){ alert('empty array is true here'); }

你能解释一下为什么吗

解决方法

这是因为==在JS强制转换,如果一个类型可以转换为另一个返回值是true,这里因为[]不能更改或与bool进行比较它是假的,如果([])检查null和未定义值,因为[]既不为null,也不是未定义,它返回true

检查这个
Which equals operator (== vs ===) should be used in JavaScript comparisons?

猜你在找的JavaScript相关文章