В этой статье мы рассмотрим семь классных и современных функций JavaScript, о которых большинство разработчиков могут не знать.

1. Дополнительная цепочка

Необязательная цепочка — это новая функция JavaScript, которая позволяет разработчикам писать более лаконичный и удобный для чтения код. С необязательной цепочкой вы можете получить доступ к вложенным свойствам объекта, не беспокоясь о том, существуют ли эти свойства.

const user = {
  name: 'John',
  address: {
    city: 'New York',
    state: 'NY'
  }
};

console.log(user?.address?.city); // Output: New York
console.log(user?.address?.zipCode); // Output: undefined

В приведенном выше примере мы используем необязательный оператор цепочки (?.) для доступа к свойству города объекта адреса. Если бы адресный объект не существовал или если бы он не имел свойства города, код просто возвращал бы значение undefined.

2. Нулевой оператор объединения

Нулевой оператор объединения (??) — еще одна новая функция в JavaScript, которую можно использовать для предоставления значения по умолчанию для переменных, которые могут быть нулевыми или неопределенными.

const name = null ?? 'John';

console.log(name); // Output: John

В приведенном выше примере мы используем нулевой оператор объединения, чтобы присвоить значение по умолчанию «Джон» переменной имени, поскольку ее начальное значение равно нулю.

3. Обещание.allSettled()

Метод Promise.allSettled() — это новое дополнение к Promise API в JavaScript. Это позволяет разработчикам одновременно запускать несколько промисов и получать результаты всех из них, независимо от того, разрешаются они или отклоняются.

const promises = [
  Promise.resolve(1),
  Promise.reject('Error'),
  Promise.resolve(3)
];

Promise.allSettled(promises)
  .then(results => console.log(results));

// Output:
// [
//   { status: 'fulfilled', value: 1 },
//   { status: 'rejected', reason: 'Error' },
//   { status: 'fulfilled', value: 3 }
// ]

В приведенном выше примере мы используем метод Promise.allSettled() для одновременного запуска трех обещаний, а затем регистрируем результаты всех из них, включая отклоненные.

4. Объект.fromEntries()

Метод Object.fromEntries() — это новое дополнение к Object API в JavaScript. Это позволяет разработчикам создавать объект из массива пар ключ-значение.

const entries = [
  ['name', 'John'],
  ['age', 30],
  ['city', 'New York']
];

const obj = Object.fromEntries(entries);

console.log(obj); // Output: { name: 'John', age: 30, city: 'New York' }

В приведенном выше примере мы используем метод Object.fromEntries() для создания объекта из массива пар ключ-значение.

5. Большое целое

Тип данных BigInt — это новое дополнение к JavaScript, которое позволяет разработчикам работать с целыми числами, превышающими максимальное значение, поддерживаемое типом данных Number.

const a = BigInt(9007199254740991);
const b = BigInt(9007199254740991);

console.log(a + b); // Output: 18014398509481982n

В приведенном выше примере мы используем BigInt для сложения двух очень больших чисел.

6. Опциональная привязка улова

Необязательная привязка перехвата — это новая функция в JavaScript, которая позволяет разработчикам перехватывать ошибки, не требуя параметра. Это может сделать код более кратким и удобным для чтения.

try {
// some code that may throw an error
} catch {
// handle the error without a parameter
}

В приведенном выше примере мы используем необязательную привязку catch для перехвата ошибок без указания параметра. Это может быть полезно, если вам не нужно использовать объект ошибки в блоке catch.

7. Массив.прототип.flatMap()

Метод Array.prototype.flatMap() — это новое дополнение к Array API в JavaScript. Это позволяет разработчикам отображать, а затем сглаживать массив за один шаг.

const arr = [1, 2, 3, 4];

const result = arr.flatMap(x => [x * 2]);

console.log(result); // Output: [2, 4, 6, 8]

В приведенном выше примере мы используем метод Array.prototype.flatMap() для умножения каждого элемента массива на 2, а затем объединяем полученный массив в один массив.

Заключение

Это лишь некоторые из многих интересных и современных функций JavaScript, доступных разработчикам. Следя за последними обновлениями языка, вы можете писать более эффективный и лаконичный код и использовать новые инструменты и методы, которые помогут вам стать лучшим разработчиком.

Создавайте приложения с повторно используемыми компонентами, как Lego

Инструмент с открытым исходным кодом Bit помогает более чем 250 000 разработчиков создавать приложения с компонентами.

Превратите любой пользовательский интерфейс, функцию или страницу в компонент многократного использования — и поделитесь им со своими приложениями. Легче сотрудничать и строить быстрее.

Подробнее

Разделите приложения на компоненты, чтобы упростить разработку приложений, и наслаждайтесь наилучшими возможностями для рабочих процессов, которые вы хотите:

Микро-интерфейсы

Система дизайна

Совместное использование кода и повторное использование

Монорепо

Узнать больше: