网站地图    收藏   

主页 > 前端 > javascript >

JavaScript中为什么null==0为false而null>=0为true

来源:自学PHP网    时间:2014-09-19 14:47 作者: 阅读:

[导读] ...


工作中我们在不停的编写代码,写着JavaScript,很少有时间进行概念上的研究。我呢,今天闲来没啥事,研究了一下有关"null"和"0"的关系。希望大家看完了能有所收获。

alert(null>=0)


上面的代码会弹出什么来呢?False?True?其实是true。那么是为什么呢?为什么"null>=0"为true呢?null>=0的时候,强转为数字类型。在进行null>=0比较时,它是通过比较null<0得到的答案,如果a=b 为false,如果a=b 为true,即0<0为false,也就是null<0为false,那么null>0为true。所以 null>=0为true。

alert(null==0)


面的代码会弹出什么来呢?False?True?其实是false。null==0"的时候是特殊处理,不会转为数字类型,不会转化为数值,但如果左面是字符串右面是数值就会被转化。"null"是对象(空对象, 没有任何属性和方法)。而"0"是数字。前面说过"=="并不转换类型,只是比较。所以,为false。

为什么"null==0"为false,但是"null>=0"为true?这个小问题就分析到这里了。在分析的过程中我也学习到了很多东西,我想大家再看的时候也有一定的收获吧。以上全是个人观点,若有啥理解不到位的,欢迎提出来,大家一起学习哈。

附一些参考

== 0 '0' [0] [] {} '' null [null] undefined NaN [NaN] 'a' Infinity 1 '1' [1]
0 true true true true false true false true false false false false false false false false
'0' true true true false false false false false false false false false false false false false
[0] true true false false false false false false false false false false false false false false
[] true false false false false true false false false false false false false false false false
{} false false false false false false false false false false false false false false false false
'' true false false true false true false true false false false false false false false false
null false false false false false false true false true false false false false false false false
[null] true false false false false true false false false false false false false false false false
undefined false false false false false false true false true false false false false false false false
NaN false false false false false false false false false false false false false false false false
[NaN] false false false false false false false false false false false false false false false false
'a' false false false false false false false false false false false true false false false false
Infinity false false false false false false false false false false false false true false false false
1 false false false false false false false false false false false false false true true true
'1' false false false false false false false false false false false false false true true true
[1] false false false false false false false false false false false false false true true false
=== 0 '0' [0] [] {} '' null [null] undefined NaN [NaN] 'a' Infinity 1 '1' [1]
0 true false false false false false false false false false false false false false false false
'0' false true false false false false false false false false false false false false false false
[0] false false false false false false false false false false false false false false false false
[] false false false false false false false false false false false false false false false false
{} false false false false false false false false false false false false false false false false
'' false false false false false true false false false false false false false false false false
null false false false false false false true false false false false false false false false false
[null] false false false false false false false false false false false false false false false false
undefined false false false false false false false false true false false false false false false false
NaN false false false false false false false false false false false false false false false false
[NaN] false false false false false false false false false false false false false false false false
'a' false false false false false false false false false false false true false false false false
Infinity false false false false false false false false false false false false true false false false
1 false false false false false false false false false false false false false true false false
'1' false false false false false false false false false false false false false false true false
[1] false false false false false false false false false false false false false false false false
+ 0 '0' [0] [] {} '' null [null] undefined NaN [NaN] 'a' Infinity 1 '1' [1]
0 0 '00' '00' '0' '0{}' '0' 0 '0' NaN NaN '0NaN' '0a' Infinity 1 '01' '01'
'0' '00' '00' '00' '0' '0{}' '0' '0null' '0' '0undefined' '0NaN' '0NaN' '0a' '0Infinity' '01' '01' '01'
[0] '00' '00' '00' '0' '0{}' '0' '0null' '0' '0undefined' '0NaN' '0NaN' '0a' '0Infinity' '01' '01' '01'
[] '0' '0' '0' '' '{}' '' 'null' '' 'undefined' 'NaN' 'NaN' 'a' 'Infinity' '1' '1' '1'
{} '{}0' '{}0' '{}0' '{}' '{}{}' '{}' '{}null' '{}' '{}undefined' '{}NaN' '{}NaN' '{}a' '{}Infinity' '{}1' '{}1' '{}1'
'' '0' '0' '0' '' '{}' '' 'null' '' 'undefined' 'NaN' 'NaN' 'a' 'Infinity' '1' '1' '1'
null 0 'null0' 'null0' 'null' 'null{}' 'null' 0 'null' NaN NaN 'nullNaN' 'nulla' Infinity 1 'null1' 'null1'
[null] '0' '0' '0' '' '{}' '' 'null' '' 'undefined' 'NaN' 'NaN' 'a' 'Infinity' '1' '1' '1'
undefined NaN 'undefined0' 'undefined0' 'undefined' 'undefined{}' 'undefined' NaN 'undefined' NaN NaN 'undefinedNaN' 'undefineda' NaN NaN 'undefined1' 'undefined1'
NaN NaN 'NaN0' 'NaN0' 'NaN' 'NaN{}' 'NaN' NaN 'NaN' NaN NaN 'NaNNaN' 'NaNa' NaN NaN 'NaN1' 'NaN1'
[NaN] 'NaN0' 'NaN0' 'NaN0' 'NaN' 'NaN{}' 'NaN' 'NaNnull' 'NaN' 'NaNundefined' 'NaNNaN' 'NaNNaN' 'NaNa' 'NaNInfinity' 'NaN1' 'NaN1' 'NaN1'
'a' 'a0' 'a0' 'a0' 'a' 'a{}' 'a' 'anull' 'a' 'aundefined' 'aNaN' 'aNaN' 'aa' 'aInfinity' 'a1' 'a1' 'a1'
Infinity Infinity 'Infinity0' 'Infinity0' 'Infinity' 'Infinity{}' 'Infinity' Infinity 'Infinity' NaN NaN 'InfinityNaN' 'Infinitya' Infinity Infinity 'Infinity1' 'Infinity1'
1 1 '10' '10' '1' '1{}' '1' 1 '1' NaN NaN '1NaN' '1a' Infinity 2 '11' '11'
'1' '10' '10' '10' '1' '1{}' '1' '1null' '1' '1undefined' '1NaN' '1NaN' '1a' '1Infinity' '11' '11' '11'
[1] '10' '10' '10' '1' '1{}' '1' '1null' '1' '1undefined' '1NaN' '1NaN' '1a' '1Infinity' '11' '11' '11'
* 0 '0' [0] [] {} '' null [null] undefined NaN [NaN] 'a' Infinity 1 '1' [1]
0 0 0 0 0 NaN 0 0 0 NaN NaN NaN NaN NaN 0 0 0
'0' 0 0 0 0 NaN 0 0 0 NaN NaN NaN NaN NaN 0 0 0
[0] 0 0 0 0 NaN 0 0 0 NaN NaN NaN NaN NaN 0 0 0
[] 0 0 0 0 NaN 0 0 0 NaN NaN NaN NaN NaN 0 0 0
{} NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
'' 0 0 0 0 NaN 0 0 0 NaN NaN NaN NaN NaN 0 0 0
null 0 0 0 0 NaN 0 0 0 NaN NaN NaN NaN NaN 0 0 0
[null] 0 0 0 0 NaN 0 0 0 NaN NaN NaN NaN NaN 0 0 0
undefined NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
[NaN] NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
'a' NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
Infinity NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN Infinity Infinity Infinity Infinity
1 0 0 0 0 NaN 0 0 0 NaN NaN NaN NaN Infinity 1 1 1
'1' 0 0 0 0 NaN 0 0 0 NaN NaN NaN NaN Infinity 1 1 1
[1] 0 0 0 0 NaN 0 0 0 NaN NaN NaN NaN Infinity 1 1 1

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论