Вот 10 полезных секретов JavaScript, которые могут улучшить производительность кода и упростить работу:
- Деструктуризация объектов и массивов
Позволяет легко извлекать данные из объектов и массивов:const user = { name: "Alice", age: 25 }; const { name, age } = user;
- Шаблонные строки (template literals)
Помогают писать многострочные строки и вставлять выражения внутри строк:const name = "Alice"; const greeting = `Hello, ${name}!`;
- Оператор нулевого слияния (??)
Возвращает правый операнд, если левыйnull
илиundefined
:const name = null; const userName = name ?? "Guest";
- Опциональная цепочка (Optional Chaining)
Позволяет безопасно обращаться к вложенным свойствам, избегая ошибок, если свойство отсутствует:const user = { profile: null }; const city = user.profile?.address?.city ?? "Unknown";
- Стрелочные функции (Arrow functions)
Удобный синтаксис для определения функций, особенно полезен в колбэках:const sum = (a, b) => a + b;
- Spread оператор (...)
Позволяет разворачивать массивы и объекты:const arr1 = [1, 2, 3]; const arr2 = [...arr1, 4, 5]; // [1, 2, 3, 4, 5] const obj1 = { name: "Alice" }; const obj2 = { ...obj1, age: 25 }; // { name: "Alice", age: 25 }
- Оператор сокращённого логического присваивания (&&=, ||=, ??=)
Позволяет сократить выражения присваивания:let isActive = true; isActive &&= false; // isActive теперь false let name = null; name ||= "Guest"; // name теперь "Guest"
- Map и Set для коллекций
Map для хранения ключ-значение, Set для уникальных значений:const map = new Map(); map.set("name", "Alice"); const set = new Set([1, 2, 3, 3]);
- Преобразование в Boolean через !!
Простой способ приведения значения к логическому типу:const isLoggedIn = !!user;
- Замыкания (Closures)
Функции могут запоминать контекст своего создания:
function counter() {
let count = 0;
return () => count++;
}
const increment = counter();
increment(); // 1
increment(); // 2
Эти приёмы помогут вам сделать код более чистым, эффективным и удобным для работы.