DEV Community

LuĂ­s Von Muller
LuĂ­s Von Muller

Posted on

đŸ”„ 3 Coisinhas Legais do ES12 (JavaScript 2021) 🌟

Foram trazidas a vida no JavaScript (ECMAScript) em 2021 vĂĄrias novas opçÔes de sintaxe e outros (ES12), separei 3 aqui Ă  nĂ­vel iniciante para vocĂȘ usar em ambiente NodeJs ou similar.

⚠ Antes de sair usando, por favor meu anjo 😇 lembre-se que nem todo navegador vai suportar isso, e nĂŁo Ă© para ser exportado por questĂ”es de compatibilidade. Por favor. 😼‍💹

🔱 Separador entre dĂ­gitos NumĂ©ricos:

👉 Permite usar "_" para separar os nĂșmeros facilitando a leitura:

let bilhao = 1000000000; 
Enter fullscreen mode Exit fullscreen mode

É um bilhão? É. Mas tá meio difícil de visualizar de primeira. Apenas o presidenciável Ciro Gomes iria ver de primeira...

Quero ver onde vamos achar, "1 BilhĂŁo"? - Gomes, Ciro

JĂĄ com o ES12 podemos fazer o seguinte:

let bilhao = 1_000_000_000; 
Enter fullscreen mode Exit fullscreen mode

Leitura de casas decimais facilitada :)

💬 replaceAll() - Substituir todas as ocorrĂȘncias de uma string em outra.

👉 Vamos imaginar đŸȘ„ que temos a seguinte string:

let strExemplo1 =
  "Javascript é alguma coisa, provavelmente Javascript é uma Linguagem de programação. Javascript não tem nada a ver com Java";

Enter fullscreen mode Exit fullscreen mode

Se nĂłs usarmos o mĂ©todo "replace" para trocar todas as ocorrĂȘncias da palavra Javascript por Typescript, ele sĂł trocaria a primeira.

console.log(strExemplo1.replace("Javascript", "Typescript")); // Remove apenas a primeira ocurrĂȘncia
// Output: Typescript é alguma coisa, provavelmente Javascript é uma Linguagem de programação. Javascript não tem nada a ver com Java
Enter fullscreen mode Exit fullscreen mode

Para fazermos isso precisaríamos usar uma Expressão regular dentro do método, isto é: REGEX.

console.log(strExemplo1.replace(/Javascript/g, "Typescript")); // Remove todas as ocorrĂȘncias.
Enter fullscreen mode Exit fullscreen mode

Mas com o ES 12...

console.log(strExemplo1.replaceAll("Javascript", "Typescript"));
Enter fullscreen mode Exit fullscreen mode

👀 Saída da execução (comparativo entre as 3 maneiras)... 👉
Output das 3 execuçÔes supracitadas

đŸ€© Atribuição em Nulo - Nullish Coalescing Assignment Operator

👉 Vamos imaginar đŸȘ„ que temos o seguinte cĂłdigo:

let algumaCoisa = 1;
let nada = null;
Enter fullscreen mode Exit fullscreen mode

Agora, vamos verificar se "nada" Ă© nulo, e caso for, vamos atribuir o valor de "algumaCoisa" Ă  ele.

nothing ??= something; // TĂĄ nulo, recebe 1.
console.log(something === something); // Retona true.
Enter fullscreen mode Exit fullscreen mode

Ou seja, caso alguma coisa seja nula, recebe um valor informado.


Bom, por hoje Ă©: sĂł (◡‿◡✿)

Vem pro meu Twitter & muito mais: https://allmylinks.com/luisvonmuller

"Meu estĂŽmago acha que todas as batatas sĂŁo purĂȘ de batatas.".
BeijĂŁo (っ˘з(˘⌣˘ )

Top comments (1)

Collapse
 
hgoulart profile image
Hingo Rocha

Damn nice!!