JavaScript中null和undefined的区别是:1、null是js的关键字,表示空值;undefined不是js的关键字,它是一个全局变量;2、null是Object的一个特殊值,如果一个Object为null,表示这个对象不是有效对象等。
一、JavaScript中null和undefined的区别
1、null是js的关键字,表示空值;undefined不是js的关键字,它是一个全局变量
2、null是Object的一个特殊值,如果一个Object为null,表示这个对象不是有效对象,null是一个不存在的对象的占位符;undefined是Globel的一个属性
3、类型不一样:
typeof(null) // object
typeof(undefined) //undefined
console.log(typeof(null) === ‘object’)//true
console.log(typeof(undefied) === ‘undefined’)//true
4、转换的值不一样:
console.log(Number(undefined));//NaN
console.log(Number(11+ undefined));//NaN
console.log(Number(null));//0
console.log(Number(11+ null));//10
JS 中的 null
描述:
① 是 JavaScript 基本类型之一,特指对象的值未设置,是表示缺少的标识,指示变量未指向任何对象,把 null 看为尚未创建的对象,也许更好理解;
② 是一个字面量,不像 undefined,它不是全局对象的一个属性;
③ 在布尔运算中被认为是 false;
④ 与其他任何对象一样永远不会被 JavaScript 隐式赋值给变量。
注:如果 JavaScript 预期某个位置应该是布尔值,会将该位置上现有的值自动转为布尔值。转换规则是除了下面六个值被转为 false,其他值都视为 true。
JS 中的 undefined
描述:
① 是 JavaScript 基本类型之一,表示 “缺少值”,就是此处应该有一个值,但是还没有定义;
② 是 JavaScript 在运行时创建的全局变量,是全局对象的一个属性;
③ 在布尔运算中被认为是 false。
延伸阅读:
二、undefined典型用法
变量被声明但没有赋值时,就等于 undefined。
对象的某个属性没有赋值时,该属性的值为 undefined。
调用函数过程中,应该提供的参数没有提供时,该参数就等于 undefined。
函数没有返回值时,默认返回 undefined。
以上就是关于JavaScript中null和undefined的区别的内容希望对大家有帮助。