programandoai

Novidades recentes (ES2022 a ES2025)

A linguagem ganha recursos novos todo ano. Uma espiada no que chegou recentemente, e por que você não precisa decorar nada disso.

Estudar esta lição interativa →

Uma última curiosidade para fechar o módulo: o JavaScript não é um produto pronto, é uma linguagem viva. Todo ano, um comitê publica uma nova versão da especificação oficial (chamada ECMAScript, ou "ES" para os íntimos; é por isso que você verá nomes como ES2025 por aí), e os navegadores vão adotando as novidades. Quase tudo o que você aprendeu como "JavaScript moderno" (arrow functions, template literals, spread) entrou na linguagem exatamente assim, ano após ano. Três adições recentes, de anos diferentes, para você ver o processo em ação:

Agrupar por categoria (ES2024)

Object.groupBy

Recebe uma lista e uma função que diz a categoria de cada item, e devolve um objeto com os grupos prontos.

Contar do fim (ES2022)

.at(-1)

Pega itens de um array aceitando índice negativo: .at(-1) é o último, sem a conta do length - 1.

Operações de conjunto (ES2025)

intersection()

Um Set é uma coleção sem itens repetidos. Ele ganhou união, interseção e diferença: perguntas do tipo <i>o que estas duas listas têm em comum?</i>

// Novidades recentes da linguagem (de ES2022 a ES2025):

// ES2024 · Object.groupBy, agrupa uma lista por uma categoria:
const produtos = [
  { nome: "Maçã", tipo: "fruta" },
  { nome: "Alface", tipo: "verdura" },
  { nome: "Uva", tipo: "fruta" },
];
const porTipo = Object.groupBy(produtos, (p) => p.tipo);
console.log(porTipo);

// ES2022 · .at(), pega itens contando do fim com número negativo:
const lista = [10, 20, 30, 40];
console.log(lista.at(-1)); // 40 (último)

// ES2025 · métodos de conjunto. Um Set é uma coleção sem itens repetidos:
const a = new Set([1, 2, 3, 3]); // o 3 repetido entra uma vez só
console.log(a.size); // 3
const b = new Set([2, 3, 4]);
console.log([...a.intersection(b)]); // [2, 3]

Recursos recentes da linguagem.

E aqui vai a mensagem mais importante da lição: você não precisa decorar nada disso. Nenhum programador decora a linguagem inteira. O que este curso te deu foi a base (valores, funções, listas, objetos, o jeito de pensar), e é ela que torna qualquer novidade dessas digerível: você bate o olho no Object.groupBy, reconhece que recebe uma função como o map e o filter, e pronto, já sabe usá-lo. Aprender recurso novo vira leitura de dez minutos, não um curso do zero.

← Voltar ao índice do curso