如果JavaScript预期某个位置应该是布尔值,会将该位置上现有的值自动转为布尔值。
转换规则是除了下面六个值被转为false,其他值都视为true:
undefined
null
false
0
NaN
"双引号中无内容" 或 '单引号中无内容'(即空字符串)
需要特别注意的是,空数组([])和空对象({})对应的布尔值,都是true。
JS布尔值转换规则
本文详细解析了JavaScript中布尔值的自动转换规则,包括哪些值会被转为false,以及空数组和空对象为何被视为true。
如果JavaScript预期某个位置应该是布尔值,会将该位置上现有的值自动转为布尔值。
转换规则是除了下面六个值被转为false,其他值都视为true:
undefined
null
false
0
NaN
"双引号中无内容" 或 '单引号中无内容'(即空字符串)
需要特别注意的是,空数组([])和空对象({})对应的布尔值,都是true。
3238

被折叠的 条评论
为什么被折叠?