JavaScript

JS: Qual a diferença entre null e undefined?

27 de março de 2020

JS: Qual a diferença entre null e undefined?

Neste artigo vamos esclarecer a diferença entre null e undefined, que são valores do JavaScript para duas situações distintas, porém podem ser confundidas.

qual a diferença entre null e undefined capa

Fala programador(a), beleza? Bora aprender coisa nova! 😀

A linguagem JavaScript é bem completa, e podemos utilizá-la para vários fins

Desde programação web até data science, então é claro que teremos dificuldades com algumas de suas particularidades

Como é o caso de null e undefined, que em outras linguagens muitas das vezes não existem

E como você já deve saber a diferença é bem sutil, então é importante entender onde termina o limite de um e começa o do outro

Quer se especializar em Desenvolvimento Web? Veja o nosso catálogo de cursos.

A melhor definição de undefined seria:

Um valor primitivo, que recebemos quando uma variável não teve um valor atribuído previamente, em boa parte das vezes é um erro do programador.

E uma boa definição para null é:

Um valor primitivo, que representa uma ausência intencional de um valor, ou seja, o programador induz o null no código.

Além disso algumas confusões se dão ao comparar estes valores, como por exemplo:

console.log(null == undefined)

Receberemos true, pois estes dois valores primitivos são valores falsey, ou seja, convertidos para false em comparações

Por isso, podemos comparar variáveis vazias com null, que receberemos o mesmo resultado de undefined

E para não restar mais dúvidas, um exemplo de induzir null seria criar um objeto que precisa iniciar com uma propriedade x, mas a mesma não possui  valor inicial, por exemplo:

let pessoa = {
 nome: "Matheus",
 idade: null
}

Agora ja sabemos a diferença entre null e undefined 😀

Conclusão

Vimos que existem sim diferenças entre null e undefined, apesar de serem pequenas

Basicamente undefined é quando um valor de uma variável não está definido

E null é um valor não definido, mas de forma induzida, ou seja, o programador colocou null em alguma propriedade de objeto, por exemplo

Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube

Subscribe
Notify of
guest
0 Comentários
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x