The void
operator evaluates its argument and unconditionally returns undefined
. It can be useful in pre-ECMAScript 5
environments, where undefined
could be reassigned, but generally, its use makes code harder to understand.
Noncompliant Code Example
void doSomething();
Compliant Solution
doSomething();
Exceptions
No issue is raised when void 0
is used in place of undefined
.
if (parameter === void 0) {...}
No issue is raised when void
is used before immediately invoked function expressions.
void (function() {
...
}());
No issue is raised when void
's argument is a promise.
const promise = new Promise((resolve, reject) => {
setTimeout(() => {
resolve('done');
}, 3000);
});
void promise;