当前位置: 移动技术网 > IT编程>开发语言>JavaScript > 辨析JavaScript中的Undefined类型与null类型

辨析JavaScript中的Undefined类型与null类型

2019年07月30日  | 移动技术网IT编程  | 我要评论

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

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网