void

void 运算符 对给定的表达式进行求值,然后返回 undefined。(MDN)

表达式前面如果带有 void 关键字,则表达式的结果就会被忽略,并将 undefined 作为结果。

从业务上来看,void 关键字并不常用。

1. 用于调用函数表达式

当想让一个函数立即实行的时候,需要让 JavaScript 将一个函数识别为表达式,void 关键字就能起到这个作用。

void function() {
  alert('马上执行!冲冲冲!');
}();

图片描述

但有局限性,如果需要获取到函数的返回值,就不能使用 void。

var num1 = 1;
var num2 = 2;

var result = void function(number1, number2) {
  return [number1 + number2, number1 * number2];
}(num1, num2);

result.forEach(function(res) {
  console.log(res);
});

图片描述

如这个例子,函数返回了两数之和与两数之积的结果,但因为 void 关键字,实际 result 变量被赋值为 undefined,导致程序无法正常执行。

2. 内联在 HTML 中,阻止 a 标签的默认事件

<a> 标签的 href 属性,可以用来执行 JavaScript 代码。

通常可以这么写:

实例演示
预览 复制