The void
evaluates the given expression
and then returns undefined
.
void expression
This operator allows evaluating expressions that produce a value into places where an expression that evaluates to undefined
is desired.
The void
operator is often used merely to obtain the undefined
primitive value, usually using "void(0)
" (which is equivalent to "void 0
"). In these cases, the global variable undefined
can be used instead (assuming it has not been assigned to a non-default value).
When using an immediately-invoked function expression, void
can be used to force the function
keyword to be treated as an expression instead of a declaration.
void function iife() { var bar = function () {}; var baz = function () {}; var foo = function () { bar(); baz(); }; var biz = function () {}; foo(); biz(); }();
When a browser follows a javascript:
URI, it evaluates the code in the URI and then replaces the contents of the page with the returned value, unless the returned value is undefined
. The void
operator can be used to return undefined
. For example:
<a href="javascript:void(0);"> Click here to do nothing </a> <a href="javascript:void(document.body.style.backgroundColor='green');"> Click here for green background </a>
Note, however, that the javascript:
pseudo protocol is discouraged over other alternatives, such as unobtrusive event handlers.
Specification | Status | Comment |
---|---|---|
ECMAScript Latest Draft (ECMA-262) The definition of 'The void Operator' in that specification. | Draft | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'The void Operator' in that specification. | Standard | |
ECMAScript 5.1 (ECMA-262) The definition of 'The void Operator' in that specification. | Standard | |
ECMAScript 3rd Edition (ECMA-262) The definition of 'The void Operator' in that specification. | Standard | |
ECMAScript 1st Edition (ECMA-262) The definition of 'The void Operator' in that specification. | Standard | Initial definition. Implemented in JavaScript 1.1 |
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | Yes | Yes | Yes |
Feature | Android webview | Chrome for Android | Edge mobile | Firefox for Android | Opera Android | iOS Safari | Samsung Internet |
---|---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | Yes | Yes | Yes | ? |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void