Article image
Thallyta Castro
Thallyta Castro09/06/2022 20:05
Compartilhe

Entenda de uma vez por todas a diferença entre null e undefined.

  • #HTML
  • #JavaScript
  • #CSS

Você com certeza já deve ter se confundido ao tentar diferenciar null e undefined.

A idéia hoje, é esclarecer a diferença entre esses valores que são parecidos, porém usados em duas situações distintas no javascript.

Mas o que é NULL e UNDEFINED?

Em javascript, null e undefined são tipos de dado primitivos e eles são atribuídos às variáveis por valor. Para quem não sabe quais são os tipos de dados primitivos, a seguir vou indicá-los em uma lista:

  • String
  • Number
  • Boolean
  • Null
  • Undefined
  • Symbol

Mas enfim… qual é a diferença entre eles?

NULL

nullé um valor de atribuição. Ele pode ser atribuído a uma variável como uma representação de nenhum valor, ou seja, está definida explicitamente com um valor vazio.

const usuario = null;

A variável usuario é conhecida e existe, mas não aponta para nenhum tipo ou valor.

UNDEFINED

O undefined vai aparecer para nós sempre que inciarmos uma variável e não indicarmos um valor para ela.

const usuario;
console.log(usuario);

Vai retornar no console o valor undefined, pois declaramos a variável e não setamos valor.

Vamos nos conectar?

Linkedin: https://www.linkedin.com/in/thallyta-castro/

Github: https://github.com/thallyta-castro-cv

Compartilhe
Comentários (6)

LP

Lucas Prado - 24/06/2022 19:42

Um dos trechos de código do artigo é problemático.

const usuario;

O interpretador do JavaScript nem vai deixar esse código ser executado, pois é entendido como erro de sintaxe. Isso porque se usa "let nomeDaVariavel;" ou "var nomeDaVariavel;" com a intenção de redefinir o valor da variável posteriormente e, como se trata de uma constante, que não aceita reatribuição de valor, o interpretador automaticamente trata como um equívoco.


Para atribuir "undefined" a uma constante, o único jeito é atribuir o valor explicitamente.

const usuario = undefined;

Não é algo que eu recomende. Eu usaria null mesmo, pois undefined é um valor padrão do JavaScript quando não se explicita algo. null deixa claro que é um valor vazio intencional.

Andre Araujo
Andre Araujo - 24/06/2022 18:50

Obrigado pela explicação, pois entendi que uma variável com null é uma variável com valor vazio, e a undefined é uma variável sem um valor definido. Mas qual a diferença entre ter um valor vazio e ter valor nenhum? Ou melhor, qual a diferença no código, na prática? O que muda se eu fizer referência a uma ou a outra dentro do código? Obrigado.

João Santos
João Santos - 23/06/2022 22:16

👏👏bom mesmo

Diego Pires
Diego Pires - 09/06/2022 21:28

top


Camila Leite
Camila Leite - 17/06/2022 22:58

Obrigada pelo esclarecimento!

THIAGO SILVA
THIAGO SILVA - 09/06/2022 23:16

👏👏👏