ES6 Void关键字

void在JavaScript中是一个重要的关键字,它可以作为一元运算符出现在它的单个操作数之前,它可以是任何类型的操作数。

该运算符指定一个要评估的表达式而不返回值。运算符评估给定的表达式,然后返回undefined。

以下是相同的语法:

void expression

 

Void和立即调用函数表达式

当使用立即调用的函数表达式时,可以使用void来强制将函数关键字视为表达式而不是声明。

考虑下面的例子:

void function iife_void() {
   var msg = function () {console.log("hello world")};
   msg();
}();

在成功执行上述代码时,会显示以下输出。

hello world

 

Void和JavaScript URI

JavaScript:URI是HTML页面中常见的语法。浏览器评估URI并用返回的值替换页面的内容。这是真的,除非返回的值是未定义的。此运算符最常见的用法是在客户端JavaScript:URL中,它允许您在没有浏览器显示评估表达式值的情况下为其副作用评估表达式。

考虑下面的代码片段:

<a href = "javascript:void(javascript:alert('hello world!!'))">
  Click here to do nothing
</a>
<br/><br/><br/>
<a href = "javascript:alert('hello');">Click here for an alert</a>

将上述文件保存为HTML文档并在浏览器中打开它。第一个超链接点击评估javascript:alert(“hello”)并传递给void()运算符。但是,由于void操作符返回未定义,因此页面上不显示任何结果。

另一方面,点击时的第二个超链接显示一个警告对话框。

很多时候,您希望在网页上放置一个按钮,通过实际的打印机打印该网页的内容。JavaScript可以帮助您使用窗口对象的打印功能来实现此功能。JavaScript打印函数window.print()在执行时打印当前网页。您可以 ...