javascript void
语句计算表达式,并返回 undefined
值。这很有用,因为全局变量 undefined
可以重新定义,但为什么它会评估 en 表达式?大多数人只使用 0,如
void 0;
void(0);
看Raghu的回答,文档说
This operator allows inserting expressions that produce side effects into places where an expression that evaluates to undefined is desired.
但是你能不能给我一个例子,你不能把 void(0)
放在需要值 ùndefined` 的位置,然后在另一行计算带有副作用的表达式?
最佳答案
void
运算符的主要用途是(或者曾经是,因为今天您可能宁愿使用事件处理程序)来防止在单击带有 javascript 的链接时进行任何导航:
网址。当此 javascript 函数返回 undefined
时,不会发生导航。 void
运算符通常是实现该目的的最短方法。
示例
<a href="javascript: void console.log('click') ">log click to console</a>
或者,更一般的
<a href="javascript: void doSomething() ">do something</a>
如本 fiddle 所示
关于javascript - 为什么 javascript void 语句对表达式求值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18970446/