null,undefind的简介和区别分绍
作者:edwin
日期:2015-06-08 16:55:01
所属分类:前端 - javascript

javaScript语言有两个表示"无"的值:分别为undefined和null

null:

表示一个值被定义了,定义为“空值”

undefined

表示根本不存在赋值

这两个有什么相同和并呢?

一:相同点

1.  在javaScript中,将一个变量赋值为undefined或null,几乎没区别

var a = null; 
var a = undefined;

上面代码中,a变量分别被赋值为undefined和null,这两种写法几乎相等

2. 在运算符==中是相等的

undefined == null  //true

3.  if条件中都被转为false

if (!undefined) 
    console.log('undefined is false');// undefined is false
if (!null) 
    console.log('null is false');// null is false

二:不同点

1. 运算符===中是不相等的

undefined === null //false

2. typeof运算符结果不同

typeof(undefined) //undefined
typeof(null) //object

3. 自动转为数值时不同

Number(null)  //0
Number(undefined)  //NaN

三:NULL奇怪的地方

1. null本身不是对象,但typeof(null)却返回object

2. parseInt(null),竟然返回NaN

评论

全部评论 / 3
  1. 路过....
    nikazi2015-06-09 10:41:17 回复
    1
  2. 正好用的着
    zhangx2015-06-09 00:57:34 回复
    2
  3. 结构清晰
    nihao2015-06-09 01:00:20 回复