ExpertiDict

JavaScript · Essencial · Inglês · Técnico

NaN

/næn/valor especial

Valor numérico especial, 'not a number', resultante de operações inválidas como 0/0 ou Number('abc'). É o único valor que não é igual a si mesmo.

Onde usar

Aparece quando uma conversão para número falha e se propaga por todo cálculo seguinte, escondendo a origem do erro. Para testar, use Number.isNaN, não comparação com ===.

Em código

const n = Number('abc');
console.log(n === NaN);       // false
console.log(Number.isNaN(n)); // true
console.log(typeof n);        // 'number'

Exemplos

The calculation propagated a NaN all the way to the UI.

O cálculo propagou um NaN até a interface.

Use Number.isNaN, because NaN is never equal to itself.

Use Number.isNaN, porque NaN nunca é igual a si mesmo.

Cuidado

Escrever x === NaN, que sempre dá false. Evite também o isNaN global, que converte o argumento antes de testar.

Origem

Sigla de Not a Number, definida no padrão IEEE 754.

Veja também

Todos os termos de JavaScript