辨析JavaScript中的Undefined类型与null类型
Undefined
表示变量已声明,但未被初始化。需要注意的是当使用typeof操作符判断数据类型时,未被声明的变量和未初始化的变量返回的值都为undefined
var message; console.log(typeof message);//undefined console.log(typeof age);//undefined
null:表示一个空对象指针
使用typeof操作符返回的值是'object',需要注意的是,undefined值是派生自null值的,因此ECMA-262规定对它们的相等性测试要返回true。
console.log(null == undefined);//true
undefined与null的区别
(1)undefined表示一个变量没有被声明,或者被声明了但没有被赋值
(2)null是一个表示“没有值”的值
(3)Javascript将未赋值的变量默认值设为undefined
(4)Javascript从来不会将变量设为null。它是用来让程序员表明某个用var声明的变量时没有值的。
(5)undefined不是一个有效的JSON,而null是
(6)undefined的类型(typeof)是undefined,null的类型(typeof)是object.
PS:它们都是基本类型
他们都是falsy (Boolean(undefined) // false, Boolean(null) // false)
你可以这样判断一个变量是否是undefined
typeof variable === "undefined"
你可以这样判断一个变量是否是null
variable === null
双等号比较时它们相等,但三等号比较时不相等
null == undefined // true null === undefined // false
- 处理JavaScript值为undefined的7个小技巧
- JavaScript undefined及null区别实例解析
- JavaScript中的null和undefined用法解析
- javascript中undefined的本质解析
- JS在Chrome浏览器中showModalDialog函数返回值为undefined的解决方法
- Javascript类型系统之undefined和null浅析
- javascript类型系统——undefined和null全面了解
- Javascript基础_简单比较undefined和null 值
- JavaScript必知必会(二) null 和undefined
- JavaScript之不可靠的undefined
相关文章
JavaScript中的Repaint和Reflow用法详解
这篇文章主要介绍了JavaScript中的Repaint和Reflow用法详解,是JS入门学习中的基础知识,需要的朋友可以参考下2015-07-07有关javascript的性能优化 (repaint和reflow)
本篇文章,小编将为大家介绍,有关javascript的性能优化(repaint和reflow),有需要的朋友可以参考一下2013-04-04onkeyup,onkeydown和onkeypress的区别介绍
三者在事件的响应上还有一点不同,就是onkeydown 、onkeypress事件响应的时候输入的字符并没有被系统接受,而响应onkeyup的时候,输入流已经被系统接受2013-10-10
最新评论