ECMAScript 2021
Número da versão do JavaScript
As versões antigas do JS são nomeadas por números: ES5 (2009) e ES6 (2015).
Desde 2016, as versões são nomeadas por anos: ECMAScript 2016, 2017, 2018, 2019, ...
Novas características
Novas características do ES2021:
- Promise.any()
- Método de string replaceAll()
- Separador de número (_)
Novas características do ES2022:
- Método de array at()
- Método de string at()
- Expressão regular /d
- Object.hasOwn()
- error.cause
- await import
- Métodos e campos privados
- Declaração de campo de classe
Aviso
Essas características são relativamente novas。
Os navegadores mais antigos podem precisar de código alternativo (Polyfill)
Método ReplaceAll() da string JavaScript
O ES2021 introduziu o método de string replaceAll():
Exemplo
text = text.replaceAll("Cats","Dogs"); text = text.replaceAll("cats","dogs");
A método replaceAll() permite especificar um padrão regular em vez de uma string a ser substituída。
Se o parâmetro for uma expressão regular, deve ser configurado o sinal global (g
), caso contrário, será lançado um TypeError。
Exemplo
text = text.replaceAll(/Cats/g,"Dogs"); text = text.replaceAll(/cats/g,"dogs");
Dica:ES2020 Introduziu o método de string matchAll().
Separadores numéricos JavaScript
O ES2021 introduziu os separadores numéricos (_
) para tornar o número mais legível:
Exemplo
const num = 1_000_000_000;
Os separadores numéricos são apenas para uso visual.
Exemplo
const num1 = 1_000_000_000; const num2 = 1000000000; (num1 === num2);
Os separadores numéricos podem ser colocados em qualquer posição dentro de um número:
Exemplo
const num1 = 1_2_3_4_5;
Atenção
Os separadores numéricos não são permitidos no início ou no final de um número.
No JavaScript, apenasVariávelPode começar com _.
Desde janeiro de 2020, todos os navegadores modernos suportam separadores numéricos:
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 75 | Edge 79 | Firefox 74 | Safari 13.1 | Opera 67 |
Junho de 2019 | Janeiro de 2020 | Outubro de 2019 | Setembro de 2019 | Junho de 2019 |