DEV Community

Cover image for O que é strict mode no JavaScript?
Cristian Magalhães
Cristian Magalhães

Posted on

O que é strict mode no JavaScript?

E aí, gente bonita, beleza? Retomando os estudos em JS, hoje vou falar um pouco para vocês sobre o strict mode. Então pega um cafezinho e vem comigo.

Problemas da linguagem

Caso você seja novo na linguagem e não saiba, o JavaScript é uma linguagem muito poderosa e com ela você pode fazer muita coisa, mas quando eu digo muita coisa, é MUITA COISA mesmo. Coisas que não deveriam ser feitas. Costumo dizer que essa liberdade do JS é uma das melhores e piores coisas da linguagem.

Agora você me pergunta: que coisas são essas?

E aqui estou para te dizer alguns problemas da linguagem:

  • Pode atribuir valores a variáveis não declaradas.
  • Você pode usar o operador delete em variáveis e funções.
  • Nomes de parâmetros duplicados são permitidos fora do strict mode.

Caso queira ver mais alguns problemas da linguagem, recomendo a leitura do repositório What the f*ck JavaScript?. Conhecer os problemas da linguagem é tão importante quanto os seus pontos fortes.

WTF

Como eu resolvo isso?

Ok, realmente temos alguns problemas na linguagem, mas para evitar todos logo de cara você não precisa ler todo o repositório do What the f*ck JavaScript? de uma vez só. Você pode usar o famoso 'use strict'; no topo dos seus arquivos. Assim, você vai ativar o modo estrito para todo o arquivo e todos esses problemas da linguagem vão aparecer como erros no seu console e você vai poder resolvê-los antes de enviar para o ar!

É importante lembrar que muitas bibliotecas já usam o strict mode por debaixo dos panos, assim como compiladores como Babel e TypeScript. Então você deve se preocupar mais com o uso do strict mode quando for trabalhar com JS puro.

YES

Conclusão

Dito tudo isso, hoje vimos que o nosso amado JS não é só feito de coisas boas, apesar de ainda serem muitas rsrs. Recomendo fortemente a leitura do repositório What the f*ck JavaScript? e, caso queira saber o que mais o modo estrito do JavaScript resolve, eu deixei alguns links de referências.

Referências

W3S Schools


Espero que tenha sido claro e tenha ajudado a entender um pouco mais sobre o assunto, fique a vontade para dúvidas e sugestões abaixo!

Se chegou até aqui, me segue la nas redes vizinhas.

thank you dog

Top comments (1)

Collapse
 
jangelodev profile image
João Angelo

Hi Cristian Magalhães,
Top, very nice !
Thanks for sharing