概述
下面6种值转化为布尔值时为false,其他转化都为true
1、undefined(未定义,找不到值时出现)
2、null(代表空值)
3、false(布尔值的false,字符串"false"布尔值为true)
4、0(数字0,字符串"0"布尔值为true)
5、NaN(无法计算结果时出现,表示"非数值";但是typeof NaN==="number")
6、""(双引号)或''(单引号) (空字符串,中间有空格时也是true)
注意空数组空对象,负值转的布尔值时都为true
数据类型 | 转为true的值 | 转为false的值 |
Boolean | true | false |
String | 任何非空字符串 | ''(空字符串) |
Number | 任何非零数字值(包括无穷大) | 0和NaN |
Object | 任何对象 | null |
Undefined | n/a | undefined |
对于0, '', null, undefined, NaN,{}, [], Infinity求布尔值,分别是false false false false false true true true.
因此我们知道的一点是:对象的布尔值是true,即使是对象{}。
"!!"将表达式进行强制转化为bool值的运算,运算结果为true或者false。
例如 array=[1,2,3] array.num=undefind !array.num=true !!array.num=false
转载于:https://www.cnblogs.com/zjx304/p/9782942.html
最后
以上就是坚强金针菇为你收集整理的js中布尔值为false的六种情况的全部内容,希望文章能够帮你解决js中布尔值为false的六种情况所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复