Expressões abreviadas e idiomáticas do JavaScript moderno que substituem códigos longos e repetitivos.
Padrões de Sintaxe Abreviada Essenciais
Coalescência Nula (??) e Valores Padrão
// ?? verifica estritamente null ou undefined (preserva 0 e false)
const port = process.env.PORT ?? 3000;
// || recorre ao valor padrão em qualquer valor falsy (0, "", false, NaN)
const title = customTitle || 'Untitled';
Encadeamento Opcional (?.)
// Navega com segurança por objetos aninhados sem gerar TypeError
const street = user?.address?.street;
const firstTag = user?.tags?.[0];
const result = user?.getProfile?.();
Execução por Curto-Circuito (&&)
// Executa a função somente se a condição for verdadeira
isLoggedIn && showDashboard();
Abreviaturas de Propriedades e Métodos de Objetos
const name = 'Alice';
const age = 30;
// Notação abreviada de literal de objeto
const user = {
name,
age,
greet() {
return `Hello ${this.name}`;
}
};
Desestruturação de Arrays e Objetos
const { name, age, role = 'member' } = user;
const [first, second, ...rest] = [1, 2, 3, 4, 5];