首页 > 代码库 > javascript:void(0)

javascript:void(0)

这是不是一个设计缺陷呢 
void(0)这种用法巧妙利用void关键字的特性返回undefined(且没有副作用)。因为不是关键字,比如直接使用undefined,内容可能被改写。 

再来看为啥使用0,而不是1,2,或"hello world"。因为它简单,并成了惯例。http://stackoverflow.com/questions/7452341/what-does-void-0-mean 

用处 
有一个超链接,如果把dosomething放到href里面,页面就会发生跳转。正确做法如下。http://weblog.west-wind.com/posts/2007/Jan/01/HREF-links-and-javascript-Navigation 

<a href="javascript:void(0)" onclick="dosomething()">Click</a>, 

注意,alert,prompt等方法返回值是null, 因此javascript:alert(1)有相同效果(除了弹出对话框之外)。 

通常,在href指定javascript:dosomething() 将把浏览器重定向到一个包含JavaScript返回值的文本的页面。除非该函数的返回值是null或undefined,浏览器才会留在当前页面不跳转。void(0)就是告诉浏览器什么都不要做。