void 运算符

void 运算符计算给定的表达式,然后返回 undefined

句法:

void expression

返回:

  • undefined

描述

void 运算符通常用于通过写 void 0void(0) 来获得 undefined 原始值。请注意,void 是一个操作符,而不是一个函数,因此不需要 ()

通常 void 表达式和 undefined 的结果可以互换使用。
但是,在旧版本的 ECMAScript 中,window.undefined 可以被赋值为任意值,并且仍然可以使用 undefined 作为函数内部函数参数变量的名称,从而破坏依赖于 undefined 值的其他代码。
void 总会产生真正的 undefined 值。

void 0 也常用于代码缩小作为一种较短的写作方式 18。此外,它可能更安全,因为其他一些代码可能会篡改 window.undefined

例子:

返回 undefined

function foo(){
    return void 0;
}
console.log(foo()); // undefined

在某个范围内更改 undefined 的值:

(function(undefined){
    var str = 'foo';
    console.log(str === undefined); // true
})('foo');