JavaScript 中 null 和 undefined 的区别

一个很有意思的问题,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"){//成功
}








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值