JavaScript em 2025: o que há de novo? Visão geral para iniciantes

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

JavaScript em 2025: visão geral dos novos recursos para iniciantes



O JavaScript continua a evoluir rapidamente, e 2025 se tornou um marco importante para todos que estudam ou trabalham com esta linguagem. As inovações do ECMAScript 2025 (ES2025) e as atualizações da plataforma Node.js tornam o código mais limpo, rápido e seguro. Neste artigo, abordaremos as principais mudanças que serão úteis tanto para iniciantes quanto para desenvolvedores experientes. Você descobrirá quais novos recursos surgiram e como aplicá-los na prática.



1. Temporal API: uma nova era para trabalhar com datas e horas



Uma das inovações mais aguardadas foi a Temporal API. Anteriormente, para trabalhar com datas, usava-se o obsoleto objeto Date, que tinha vários problemas: mutabilidade, confusão com fusos horários e falta de suporte a calendários. O Temporal resolve todos esses problemas.



Agora, datas e horas se tornaram imutáveis (immutable), e o trabalho com fusos horários ficou intuitivo. Vejamos um exemplo:



// Temporal API em ação
const now = Temporal.Now.plainDateTimeISO();
console.log(now.toString()); // 2025-03-15T14:30:00

// Criando uma data com fuso horário especificado
const meeting = Temporal.ZonedDateTime.from({
  timeZone: 'Europe/Moscow',
  year: 2025,
  month: 12,
  day: 25,
  hour: 10,
  minute: 0
});
console.log(meeting.toLocaleString('pt-BR')); // 25/12/2025, 10:00


Agora você pode comparar datas facilmente, adicionar dias ou meses sem risco de mutações:



const start = Temporal.PlainDate.from('2025-01-01');
const end = start.add({ months: 3 });
console.log(end.toString()); // 2025-04-01


Para iniciantes, isso significa que não é mais necessário incluir bibliotecas como Moment.js ou date-fns — tudo está disponível nativamente.



2. Decoradores: suporte oficial no padrão



Decoradores são uma ferramenta poderosa para modificar o comportamento de classes e seus métodos. Em 2025, eles finalmente receberam status oficial no ECMAScript. Antes, só podiam ser usados através de TypeScript ou Babel; agora, em JavaScript puro.



Veja como é um decorador simples para registrar a chamada de um método:



// Decorador para logging
function log(target, context) {
  const methodName = context.name;
  const originalMethod = target;

  return function (...args) {
    console.log(`Chamada de ${methodName} com argumentos: ${JSON.stringify(args)}`);
    const result = originalMethod.call(this, ...args);
    console.log(`Resultado: ${result}`);
    return result;
  };
}

class Calculator {
  @log
  add(a, b) {
    return a + b;
  }
}

const calc = new Calculator();
calc.add(2, 3); 
// Saída: Chamada de add com argumentos: [2,3]
// Saída: Resultado: 5


Decoradores são especialmente úteis para autenticação, cache, validação de dados e outras tarefas transversais. Iniciantes devem lembrar o principal: um decorador é simplesmente uma função que envolve outra função, adicionando um novo comportamento a ela.



3. Métodos aprimorados de arrays e coleções



Em 2025, trabalhar com arrays ficou ainda mais conveniente. Novos métodos surgiram, simplificando a ordenação, busca e transformação de dados. Vejamos os mais úteis.



Método Array.prototype.groupBy()

Permite agrupar elementos de um array por chave. Antes, era necessário escrever loops ou usar reduce().



const users = [
  { name: 'Ana', role: 'admin' },
  { name: 'João', role: 'user' },
  { name: 'Maria', role: 'admin' },
  { name: 'Pedro', role: 'user' }
];

const grouped = users.groupBy(user => user.role);
console.log(grouped);
// {
//   admin: [{ name: 'Ana', role: 'admin' }, { name: 'Maria', role: 'admin' }],
//   user: [{ name: 'João', role: 'user' }, { name: 'Pedro', role: 'user' }]
// }


Método Array.prototype.toSorted()

Ao contrário de

Blogs

Book Recommendations