JavaScript nulo e indefinido

Neste tutorial, você aprenderá sobre os tipos de dados nulos e indefinidos disponíveis em JavaScript com a ajuda de exemplos.

Existem 8 tipos de tipos de dados em JavaScript. Eles são:

Tipos de dados Descrição
String representa dados textuais
Number um número inteiro ou de ponto flutuante
BigInt um inteiro com precisão arbitrária
Boolean Qualquer um dos dois valores: verdadeiro ou falso
Object pares de valor-chave de coleta de dados
Symbol um tipo de dados cujas instâncias são únicas e imutáveis
undefined um tipo de dados cuja variável não foi inicializada
null palavra-chave especial denotando um valor nulo

undefinede nullsão os dois tipos de dados que discutiremos neste tutorial.

JavaScript indefinido

Se uma variável for declarada, mas o valor não for atribuído, o valor dessa variável será undefined. Por exemplo,

 let name; console.log(name); // undefined

Também é possível atribuir explicitamente undefineda uma variável. Por exemplo,

 let name = "Felix"; // assigning undefined to the name variable name = undefined console.log(name); // returns undefined

Nota: Normalmente, nullé usado para atribuir valor 'desconhecido' ou 'vazio' a uma variável. Portanto, você pode atribuir nulla uma variável.

JavaScript nulo

Em JavaScript, nullé um valor especial que representa um valor vazio ou desconhecido . Por exemplo,

 let number = null;

O código acima sugere que a variável numérica está vazia no momento e pode ter um valor posteriormente.

Nota : nullnão é o mesmo que NULL ou Null.

Valores Falsos

Em JavaScript, undefinede nullsão tratados como valores falsos. Por exemplo,

 if(null || undefined ) ( console.log('null is true'); ) else ( console.log('null is false'); )

Resultado

 nulo é falso

Um undefinedou nullé convertido para falsequando usado com a Boolean()função. Por exemplo,

 let result; result = Boolean(undefined); console.log(result); // false result = Boolean(null); console.log(result); // false

Tipo de JavaScript: nulo e indefinido

Em JavaScript, nullé tratado como um objeto. Você pode verificar isso usando o operador typeof. O typeofoperador determina o tipo de variáveis ​​e valores. Por exemplo,

 const a = null; console.log(typeof a); // object

Quando o typeofoperador é usado para determinar o undefinedvalor, ele retorna undefined. Por exemplo,

 let a; console.log(typeof a); // undefined

Valores padrão de JavaScript: nulo e indefinido

Antes de visitar esta seção, certifique-se de verificar o tutorial de parâmetro padrão JavaScript.

Em JavaScript, quando você passa undefinedpara um parâmetro de função que assume um valor padrão, o undefinedé ignorado e o valor padrão é usado. Por exemplo,

 function test(x = 1) ( console.log(x); ) // passing undefined // takes default value 1 test(undefined); // 1

No entanto, quando você passa nullpara uma função de parâmetro padrão, a função assume o nullcomo um valor. Por exemplo,

 function test(x = 1) ( console.log(x); ) // passing undefined // takes null test(null); // null

Comparando nulo e indefinido

Ao comparar nulle undefinedcom igual ao operador ==, eles são considerados iguais. Por exemplo,

 console.log(null == undefined); // true

Em JavaScript, ==compara valores executando a conversão de tipo. Ambos nulle undefinedretornam falso. Portanto, nulle undefinedsão considerados iguais.

No entanto, ao comparar nulle undefinedcom estrito igual a operador ===, o resultado é falso. Por exemplo,

 console.log(null === undefined); // false

Artigos interessantes...