O operador void
avalia a expressão dada e, em seguida, retorna indefinido
.
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 indefinida
é desejada.
O operador void
é muitas vezes utilizado apenas para obter o valor primitivo indefinido
, geralmente usando "void(0)
" (o que equivale a "void 0
"). Nestes casos, a variável global indefinida
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 entando 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. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'The void Operator' in that specification. |
Standard |
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) |