[英]Why does “0 && true” return 0 in javascript instead of a boolean?
[英]Why does Boolean([]) return true in JavaScript?
正如预期的那样,在 JavaScript [] == 0
中返回 true。 但是Boolean([])
也返回 true。
我希望它返回 false,因为== 0
检查是否为 false。
这就是Boolean()
函数的实现方式。
如果您查看Boolean()
函数的MDN 文档,您会发现这一点(强调我的)
如有必要,作为第一个参数传递的值将转换为布尔值。 如果该值被省略或为 0、-0、null、false、NaN、undefined 或空字符串 (""),则该对象的初始值为 false。 所有其他值,包括任何对象、空数组 ([]) 或字符串“false”,都会创建一个初始值为 true 的对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.