取值方法:
对应的布尔值: !!value
是否==1和true: value == true
是否==0和false: value == false
数据类型 | 对应的布尔值 | 是否==1和true | 是否==0和false |
---|---|---|---|
字符串 'abc' | true | false | false |
字符串 '0' | true | false | true |
空字符串 | false | false | true |
带一个空格的字符串 | true | false | true |
数字1 | true | true | false |
数字0 | false | false | true |
数字-1 | true | false | false |
null | false | false | false |
undefined | false | false | false |
true | true | true | false |
false | false | false | true |
可见,能转化为true不代表就==true。
另外:
一、null 和 undefined
三、在所有!=0的值里,true > 0 , 其它都是既不大于也不小于0
一、null 和 undefined
- null和undefined都会被转化为false,但他们既不==true,也不==false
- null == undefined 为true
- 但是 null === undefined 为false
- 还有一点,null*1=0 而 undefined*1=NaN
三、在所有!=0的值里,true > 0 , 其它都是既不大于也不小于0
暂时就能想到这些了,以后再补充吧
下面是使用到的代码: