undefined 不是保留字,只是一个全局属性
在全局作用域中是只读属性
但是在局部作用域可以被定义重写
例如下面的代码打印的是 1
(function() {
let undefined = 1
alert(undefined)
})()
为什么用 void 0 代替
首先 void 是保留字,不可以被覆盖重写,void 运算符可以对后面的表达式进行运算并且返回 undefined,也就是 void 后边无论是啥都是返回 undefined,而运算式最简单的是 0,所以用 void 0
读大神文章后做此笔记
大神原文链接:https://segmentfault.com/a/11…