Peculiaridades do JS. Que não são erros! Nem esquisitice! - Null

urielsouza29

Uriel dos Santos Souza

Posted on July 10, 2022

Peculiaridades do JS. Que não são erros! Nem esquisitice! - Null

JavaScript é uma linguagem interessante.
Null pode ser um grande problema em JS.

Null não é um primitivo. Mas por qual motivo?

Java. Sim é culpa do Java.

Saiba que null foi introduzido no início para representar "ausência de um objeto" em uma ponte Java-para-JavaScript planejada . Por isso typeof null é object.
Com a palavra o criador da linguagem.

lembre-se Null é um objeto.

typeof null === 'object'
Enter fullscreen mode Exit fullscreen mode

Então temos Null em JS por causa do JAVA.

Algo importante evite Null o máximo possivel.

A maioria dos desenvolvedores usa null e undefined de forma inconsistente e intercambiável, e poucos sabem quando usar qual.
Suportando ambos null e undefined complica a validação de entrada.
Os recursos JS mais recentes, como parâmetros padrão, funcionam apenas com undefined.

Prefira SEMPRE que puder undefined

Douglas Crockford acha que null é uma má ideia:

O proprio criador do Null se arrepende muito disso.

Null References: The Billion Dollar Mistake

Tony Hoare introduced Null references in ALGOL W back in 1965 "simply because it was so easy to implement", says Mr. Hoare. He talks about that decision considering it "my billion-dollar mistake".

favicon infoq.com

Claro que isso de não usar Null não é uma lei.
Você pode sim usar, mas a ideia é deixar de usar.
Seus casos especificos podem continuar usando sem problemas.

Algo pertinente.

Não aborde o JavaScript e Java como um ponto de familiaridade

Nem outra linguagem orientada a objetos que você conheça!

Esse é um caminho de dor e expectativas não atendidas.
Frustrações e xingamentos para todo lado...

JavaScript é algo próprio - comece do zero. Brendan Eich foi contratado com a intenção de fazer "Scheme no navegador" - por de marketing impuseram o nome JavaScript (primeiro nome foi Mocha e depois LiveScript) colocam uma sintaxe semelhante a JAVA numa esperança de aumentar a adoção.

💖 💪 🙅 🚩
urielsouza29
Uriel dos Santos Souza

Posted on July 10, 2022

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related

De uma página para vários components
javascript De uma página para vários components

November 28, 2024

Como funcionam Bindings no KnockoutJs
javascript Como funcionam Bindings no KnockoutJs

November 4, 2024

Como funcionam Observables no KnockoutJs
javascript Como funcionam Observables no KnockoutJs

October 28, 2024

Node.js pra leigos - MongoDB e Fastify
mongodb Node.js pra leigos - MongoDB e Fastify

September 30, 2024

Introdução ao KnockoutJs
javascript Introdução ao KnockoutJs

October 21, 2024