关于undefined
在JavaScript代码中,你看到的undefined最有可能是全局对象的一个属性,该属性的初始值是就是前面所说的原始值undefined。还有种情况就是,这个undefined是个局部变量,就像其他普通变量一样,没有任何特殊性,它的值不一定是undefined,但通常情况下都是的。
关于null
null 是一个 JavaScript 字面量,而不是全局对象的一个属性(undefined 是全局对象的一个属性),表示空值(null 或者 “空” 值),即没有对象被呈现(no object value is present)。它是 JavaScript 原始值 之一。
在 APIs 中,null 常被放在期望一个对象,但是不引用任何对象的参数位置。
null 与 undefined 的不同点:
● undefined表示一个变量没有被声明,或者被声明了但没有被赋值(未初始化),一个没有传入实参的形参变量的值为undefined,如果一个函数什么都不返回,则该函数默认返回undefined。null则表示“什么都没有”,即“空值”。
● Javascript将未赋值的变量默认值设为undefined;Javascript从来不会将变量设为null,它是用来让程序员表明某个用var声明的变量时没有值的;
● undefined不是一个有效的JSON,而null是;
● null 和 undefined 的值相等,但类型不等。
双等号比较时它们相等,但三等号比较时不相等;undefined的类型(typeof)是undefined;null的类型(typeof)是object。
null == undefined // true null === undefined // false typeof undefined // undefined typeof null // object
想要了解更多相关知识,可访问 前端学习网站!!
以上就是javascript中的null和undefined的区别有哪些?的详细内容,更多请关注易知道|edz.cc其它相关文章!