Open YBFACC opened 4 years ago
在我们的日常使用中 undefined 被翻译为未定义,null 则表达“无”。
举个🌰,我们随手声明个变量。
var a //undfined
可以看到变量被隐式声明为 undefined ,而如果我们要声明变量为 null,需要显式声明。
var a = null
这2个属性在平时使用中,区别感觉并不明显。都可以表达“空”。
undefined
全局的 window.undefined 不可被改写。例如下图。
window.undefined
局部使用 undefined 的危险
如果一定需要使用 undefined 时可以使用 viod。
viod
void 运算符通常只用于获取 undefined的原始值,一般使用void(0)(等同于void 0)。在上述情况中,也可以使用全局变量undefined 来代替(假定其仍是默认值)。
void(0)
void 0
引用来自MDN
null
undefined与null的区别
JavaScript深入理解之undefined与null
null 与 undefined
使用
在我们的日常使用中 undefined 被翻译为未定义,null 则表达“无”。
举个🌰,我们随手声明个变量。
可以看到变量被隐式声明为 undefined ,而如果我们要声明变量为 null,需要显式声明。
这2个属性在平时使用中,区别感觉并不明显。都可以表达“空”。
差别
undefined
undefined
是全局对象的一个属性。全局的
window.undefined
不可被改写。例如下图。局部使用
undefined
的危险如果一定需要使用
undefined
时可以使用viod
。引用来自MDN
null
null
是一个字面量。null
感觉更像是一个没有创建的对象。(原型链的终点就是null
)参考
undefined与null的区别
undefined
JavaScript深入理解之undefined与null