void运算符对任何值都返回undefined。该运算符通常用于避免输出不应该输出的值,例如,从HTML的<a>元素调用JavaScript函数时。要正确做到这一点,函数不能返回有效值,否则浏览器将清空页面,只显示函数的结果。例如:
<a href="javascript:window.open('about:blank')">Click Me</a>
如果把这行代码放入到HTML页面,点击其中的链接,即可看到屏幕上显示"[object]"(如图2-3所示)。这是因为window.open()方法返回了对新打开的窗口的引用。然后该对象将被转换成要显示的字符串。
图 2-3
要避免这种结果,可以用void运算符调用window.open()函数:
<a href="javascript:void(window.open('about:blank'))">click me</a>
这使window.open()调用返回undefined,它不是有效的值,不会显示在浏览器窗口中。记住,没有返回值的函数真正返回的都是undefined。
摘自《javascript高级程序设计》2.9运算符 ( 1 )原文地址:http://book.csdn.net/bookfiles/110/1001103365.shtml