Esta página cobre todos os recursos padronizados da próxima versão do ECMAScript (também conhecido como ES)
ES2022
- Campos Privados – aprenda como definir campos privados em uma classe.
- Métodos Privados – mostra como definir métodos privados em uma classe.
- Aguardação de nível superior – explique o módulo de espera de nível superior e seus casos de uso.
- Método Array.prototype.at() – orienta você sobre como usar o método Array.prototype.at() para acessar elementos do array.
ES2021
- String.prototype.replaceAll() – substitui todas as ocorrências de uma substring que corresponde a um padrão por uma nova.
- Operadores de atribuição lógica – apresente os operadores de atribuição lógica, incluindo
||=
,,&&=
e??=
- Separador Numérico – mostra como tornar os números mais legíveis usando sublinhados como separadores numéricos.
- Promise.any() – aprenda como usar o
Promise.any()
método JavaScript para retornar o primeiroPromise
que for cumprido.
ES2020
- Operador coalescente nulo (
??
) – aceita dois operandos e retorna o operando direito se o esquerdo fornull
ouundefined
. - Operador de encadeamento opcional (
?.
) – simplifica a maneira de acessar uma propriedade localizada profundamente em uma cadeia de objetos conectados sem ter que verificar se cada referência na cadeia énull
ouundefined
. - Promise.allSettled() – aceita uma lista de promessas e retorna uma nova promessa que resolve uma matriz de valores, que foram resolvidos (resolvidos ou rejeitados) pelas promessas de entrada.
- Importação dinâmica – mostra como importar um módulo dinamicamente por meio de um objeto semelhante a uma função
import()
. - BigInt – apresenta um novo tipo primitivo que pode representar números inteiros maiores que 2 53 – 1, que é o maior número que o Javascript pode representar de forma confiável com o
Number
tipo. - globalThis – fornece uma maneira padrão de acessar o objeto global em todos os ambientes.
ES2019
- Array.prototype.flat() – nivela um array recursivamente até uma profundidade especificada.
- Array.prototype.flatMap() – executa uma função de mapeamento em cada elemento e nivela o resultado. É a combinação do
map()
seguido peloflat()
método. - Object.fromEntries() – converte uma lista de pares de valores-chave em um objeto.
- Ligação catch opcional – omite a ligação catch quando a ligação não for usada.
- String.prototype.trimStart() – remove os caracteres de espaço em branco iniciais de uma string.
- String.prototype.trimEnd() – remove os caracteres de espaço em branco finais de uma string.
ES2018
- Operador de propagação de objetos – use o operador de propagação (
...
) para objetos. - Promise.prototype.finalmente() – execute um trecho de código quando a promessa for cumprida, independentemente de seu resultado.
- Iteradores assíncronos – aprenda como usar iteradores assíncronos para acessar fontes de dados assíncronas sequencialmente.
- Geradores assíncronos – mostram como criar um gerador assíncrono.
ES2017
- Preenchendo uma string – mostra como usar um par de métodos:
padStart()
epadEnd()
que permitem preencher uma string com outra string até um determinado comprimento. - Object.values() – retorna os valores das próprias propriedades enumeráveis de um objeto como um array.
- Object.entries() – retorna os próprios
[key, value]
pares de propriedades com chave de string enumeráveis de um objeto. - JavaScript assíncrono / aguardado – escreva código assíncrono em uma sintaxe mais clara.
ES2016
- Operador de exponenciação – apresenta o operador de exponenciação (**) que permite calcular uma base para a potência do expoente, que é semelhante ao
Math.pow()
método. - Array inclui() – permite verificar se um elemento está em um array.
Versões ES
A tabela a seguir descreve as edições e nomes oficiais do ECMAScript:
Edição | Nome oficial | Data de publicação |
---|---|---|
ES12 | ES2021 | Junho de 2020 |
ES11 | ES2020 | Junho de 2020 |
ES10 | ES2019 | Verão 2019 |
ES9 | ES2018 | Junho de 2018 |
ES8 | ES2017 | Junho de 2017 |
ES7 | ES2016 | Junho de 2016 |
ES6 | ES2015 | Junho de 2015 |
ES5.1 | ES5.1 | Junho de 2011 |
ES5 | ES5 | Dezembro de 2009 |
ES4 | ES4 | Abandonado |
ES3 | ES3 | Dezembro de 1999 |
ES2 | ES2 | Junho de 1998 |
ES1 | ES1 | Junho de 1997 |
Anterior