首页 > 代码库 > JavaScript中 void(0) 的含义
JavaScript中 void(0) 的含义
JavaScript中 void (0)的含义
概述
void运算符执行传递给它的语句,然后返回undefined。
语法
void expression
void 运算符通常仅仅被用来获取undefined的原始值,通常用void (0) (等同于void 0)。
我们为什么不直接用undefined呢?
undefined不是一个保留字(在JavaScript的某些环境中是个全局变量)。这也就是说undefined是个可用的变量名,你可以给它任意赋值。例如:
alert(undefined); //alerts "undefined"var undefined = "new value";alert(undefined) //alerts "new value"
再看一个在链接中使用的例子:
javascript:URI,执行完uri中的代码,然后用返回的值替换当前页内容,除非返回值是undefined。
<a href="javascript:void(0);"> //点击不进行任何操作</a><a href="javascript:void(document.body.style.backgroundColor=‘green‘);"> //点击后背景变成绿色</a>
所以,你不能安全的使用undefined,它返回的值未必是你预期的那样。而void则不会被覆盖,总会返回undefined。
为什么是void 0,为什么是0其他的不行吗?
其他的值也是可以的,比如1、13、”hello world”。使用0是因为比较短小简洁且符合语言习惯。
参考:
MDN void opter
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void
Stackoverflow的回答
What does ‘void 0’ mean ?
http://stackoverflow.com/questions/7452341/what-does-void-0-mean
JavaScript中 void(0) 的含义
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。