为什么用 void 0 代替 undefined
undefined 不是保留词,它只是全局对象的一个属性,在低版本 IE 中能被重写。 undefined 在 ES5 中已经是全局对象的一个只读(read-only)属性了,它不能被重写。但是在局部作用域中,还是可以被重写。 为什么选择 void 0 作为?undefined 的替代品? void 运算符能对给定的表达式进行求值,然后返回 undefined。也就是说,void 后面你随便跟上一个表达式,返回的都是 undefined,都能完美代替 undefined!那么,这其中最短的是什么呢?毫无疑问就是 void 0 了。其实用 void 1,void (1+1),void (0) 或 …