void
用法
<script>
void fun();
javascript:void fun();
//或者是
void (fun());
javascript: void(fun());
</script>
void
运算符对任何值返回 undefined
。该运算符通常用于避免输出不应该输出的值,例如,从 HTML
的 <a>
元素调用 JavaScript 函数时。要正确做到这一点,函数不能返回有效值,否则浏览器将清空页面,只显示函数的结果。例如:
<a href="javascript:window.open('about:blank')">Click me</a>
如果把这行代码放入 HTML
页面,点击其中的链接,即可看到屏幕上显示 “[object]”(ie浏览器)。TIY
这是因为 window.open()
方法返回了新打开的窗口的引用。然后该对象将被转换成要显示的字符串。
要避免这种效果,可以用 void
运算符调用 window.open()
函数:
<a href="javascript:void(window.open('about:blank'))">Click me</a>
这使 window.open() 调用返回 undefined,它不是有效值,不会显示在浏览器窗口中。
扩展:href="#" 0
和 href="javacript:void(0)
的区别?
- 我们在写代码的时候,一个空的链接,我们可能会这样写:
href="#"
。这里的#,它包含了一个位置信息,它默认的锚是#top(即网页的顶部)
。 javascript:void(0)
仅仅是一个死链接,点击不会有任何效果。通常可以用来取消掉:点击空的a
链接刷新页面 和href="#"
跳到顶部的效果。