Javascript中的空白是什么

时间:2012-09-13 19:10:07

标签: javascript

  

可能重复:
  what is the point of void in javascript
  What does “javascript:void(0)” mean?

我到处都看到javascript:void(0);无所事事。 (我认为可以使用javascript:;代替

那天我在页面中看到javascript:void(x=document.getElementById('mytext').value);void(document.getElementById('mylabel').innerHTML=x);代码。

我的问题很简单,为什么无效?什么无效?

3 个答案:

答案 0 :(得分:3)

MDN documentation page

  

此运算符允许插入产生副作用的表达式   到表达式为undefined的表达式   期望的。

     

void运算符通常仅用于获取未定义的运算符   原始值,通常使用“void(0)”(相当于“void”   0“)。在这些情况下,可以使用未定义的全局变量   (假设它尚未分配给非默认值)。

答案 1 :(得分:2)

void是一个返回undefined的运算符,尽管评估了以下表达式。不需要括号。

javascript: - url中使用它,因为任何返回值都会覆盖当前文档(如document.write())。

答案 2 :(得分:1)

我相信这是一种替代方法,即使在jQuery中也可以简单地终止点击。将单击处理程序附加到锚标记时,应始终在处理程序的末尾返回false -

$("#btn").on('click',function(){
  // make toast
  return false;
});

返回false会取消事件可能执行的任何其他操作。

当您将javasctipt:void(0)附加到元素的onclick时,您正在阻止该事件执行任何操作并将所有工作留给您的JavaScript。