您的位置:首页 > Web前端 > JavaScript

JavaScript 中 null 和 undefined 的区别

2012-10-19 20:20 615 查看
一个很有意思的问题,null 和 undefined 有什么区别呢?

null 和 undefined ,粗略一看,这个貌似都表示 没有的意思,但是  这2个有什么区别呢?

编写如下程序:

<script type="text/javascript">
var a = null;
var b;
alert(a);
alert(b);
alert(c);
</script>


其分别显示 null,undefined,最后一个未定义的c 会报错。

再继续测试

 

<script type="text/javascript">
var a = null;
var b;
alert(typeof a);
alert(typeof b);
alert(typeof c);

</script>


用 typeof 函数 显示属性,a为 Object,b、c均为undefined。

因此我们可以看出null 的类型即是 object,可以理解成 null 是初始化变量成一种特殊状态的方式。

而undefined则是 访问的变量或方法未被 定义时所,解析器所抛出的问题。

顺带的提下  typeof 返回结果是一个字符串,因此在做比较的时候要与字符串做比较。

if(typeof null == underfined){//失败
}

if(typeof null == "underfined"){//成功
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  null javascript object 测试 c