JavaScript Void关键字

时间:2019-08-20 13:50:44  来源:igfitidea点击:

void是JavaScript中一个重要的关键字,它可以作为一个一元运算符,出现在它的单个操作数之前。
该运算符指定一个不返回值的计算表达式。

js void 语法

“void”的语法有以下两种

void func()
javascript:void func()

// 或者
void(func())
javascript:void(func())

js void 示例1

void最常见的用法是在客户端中的javascript:URL中,它允许我们计算表达式,而不需要浏览器显示计算结果。

比如,JavaScript会计算下面的表达式alert('警告!!'),但不会加载到当前文档中。

<html>
   <body>   
      <a href = "javascript:void(alert('警告!!'))">点击链接</a>     
   </body>
</html>

什么是不加载到文档中?

当浏览器遇到 URI javascript:时,它将使用js解析器计算URI中的代码,然后用返回值替换页面的内容,除非返回值未定义(undefined)。
void操作符的作用就是返回undefined。 所以我们说 avascript:void()不将结果加载到当前文档中:

<html>
   <body>   
      <a href = "hello.html">点击链接</a>
      <a href = "javascript:('hello.html')">点击链接</a> --- 返回内容是 hello.html,所以点击这个链接,内容会变成 hello.html
      <a href = "javascript:void('hello.html')">点击链接</a>
   </body>
</html>

js void 示例2

在很多页面中可以看到 javascript:void(0)

Javascript void(0):使用Javascript void操作符对给定表达式求值,然后返回一个未定义的值。

当我们在网页中插入一个表达式时,这可能会产生一些不必要的效果。
要移除这个不需要的效果,我们可以使用“javascript:void(0)”。

另外,对于超链接,当我们点击一个链接时,浏览器会加载一个全新的页面。
为了防止页面刷新,我们也可以使用JavaScript:void(0)操作符。

在JavaScript中表达式“0”没有作用。 写成 javascript:void(1)都行,因为最终void操作符将结果转换为undefined。

<html>
   <body>   
      <a href = "javascript:void(0)">点我</a>      
   </body>
</html>