void 0 与 undefined

来源:互联网 发布:php 打印数组 编辑:程序博客网 时间:2024/05/16 08:52

void 0 是什么意思?

在一些高逼格的代码里经常看到void 0,如果还不熟悉赶快看看MDN;
简单的讲法就是void关键字会执行后面相关的运算但是始终返回undefined,运行下面的例子:

    var a = void 0;    console.log(a); // undefined

为啥要使用void 0?

undefined本来就不是JS语法的保留关键字,所以会存在被覆盖的可能,它只是全局对象的一个属性而已;但是在ES2015中已经是全局对象的一个只读(read-only)属性了,不能重写;什么情况下可以被覆写?
* 比如在去不作用域中:

    (function() {        var undefined = 123;        alert(undefined);    })();
  • 在IE8及IE8以下中:
    var undfined = 123;    alert(undefined);
原创粉丝点击