O operador void avalia a expressão dada e, em seguida, retorna undefined.
Sintaxe
void expressão
Descrição
Este operador permite a inserção de expressões que produzem efeitos secundários em lugares onde uma expressão que avalia a ação undefined é desejada.
O operador void é muitas vezes utilizado apenas para obter o valor primitivo undefined, geralmente usando "void(0)" (o que equivale a "void 0"). Nestes casos, a variável global undefined pode ser utilizado em vez (supondo que ele não tenha sido atribuído a um valor não-padrão).
Chamada imediata das expressões da função
Quando usamos uma Chamada imediata das expressões da função, valores nulos podem ser usado para forçar a palavra-chave da função a ser tratada como uma expressão em vez de uma declaração.
void function iife() {
var bar = function () {};
var baz = function () {};
var foo = function () {
bar();
baz();
};
var biz = function () {};
foo();
biz();
}();
JavaScript URIs
Quando o navegador segue uma URI javascript, ele avalia o código na URI e então troca o conteúdo da página pelo valor retornado por este, a não ser que o valor retornado seja undefined. O operador void pode ser usado para retornar undefined. Por exemplo:
<a href="javascript:void(0);"> Clique aqui para não fazer nada </a> <a href="javascript:void(document.body.style.backgroundColor='green');"> Clique aqui para o papel de parede ser verde </a>
Note que no entanto o pseudo protocolo javascript: tem seu uso desencorajado perante outras alternativas como unobtrusive event handlers.
Specificações
| Specificação | Status | Comentário |
|---|---|---|
| ECMAScript 1 | Standard | Initial definition. Implemented in JavaScript 1.1 |
| ECMAScript 5.1 (ECMA-262) The definition of 'The void Operator' in that specification. |
Padrão | |
| ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'The void Operator' in that specification. |
Padrão |
Compatibilidade dos navegadores
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
| Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |