С годами JavaScript развивался благодаря новым функциям и обновлениям, упрощающим написание эффективного и современного кода. Одной из таких функций, представленной в ECMAScript 2023 (ES2023), является Nullish Coalescing, которая упрощает ваш код и помогает избежать нежелательных ошибок, вызванных нулевыми или неопределенными значениями.
Что такое нулевое объединение?
Nullish Coalescing — это функция, которая позволяет указать значение по умолчанию для переменной, если она равна null или не определена. Это альтернатива логическому оператору ИЛИ (||
), который также предоставляет значение по умолчанию, но может привести к неожиданному поведению, если значением по умолчанию является ложное значение, например 0
, или пустая строка ''
.
Оператор Nullish Coalescing обозначается ??
и возвращает правостороннее выражение, если левостороннее выражение равно null
или undefined
, в противном случае он возвращает левостороннее выражение.
Синтаксис нулевого объединения
Синтаксис Nullish Coalescing прост. Вы используете оператор ??
, чтобы указать значение по умолчанию для переменной. Вот пример:
const age = 0; const defaultAge = age ?? 18;
В этом примере мы используем оператор Nullish Coalescing, чтобы установить для переменной defaultAge
значение 18, если age
равно null
или undefined
, иначе ей будет присвоено значение age
.
Примеры использования нулевого объединения
Nullish Coalescing можно использовать в различных ситуациях, когда вам нужно предоставить значение по умолчанию для переменной, если это null
или undefined
. Некоторые распространенные варианты использования включают в себя:
- Установка значений по умолчанию для аргументов функции:
function greet(name, message) { name = name ?? 'Anonymous'; message = message ?? 'Hello'; console.log(`${message}, ${name}!`); } greet(); // prints "Hello, Anonymous!"
В этом примере мы используем нулевое объединение, чтобы установить значения по умолчанию для параметров name
и message
функции greet
, если они равны null
или undefined
.
- Установка значений по умолчанию для свойств объекта:
const user = { name: 'John', age: 30 }; const city = user.city ?? 'Unknown';
В этом примере мы используем нулевое объединение, чтобы установить для переменной city
значение «Неизвестно», если свойство city
объекта user
равно null
или undefined
.
- Проверка, определено ли значение:
const value = null; const isDefined = value ?? false;
В этом примере мы используем Nullish Coalescing, чтобы установить для переменной isDefined
значение false
, если value
равно null
или undefined
.
Nullish Coalescing — это мощная функция, которая упрощает ваш код и помогает избежать нежелательных ошибок, вызванных значениями null
или undefined
. Его можно использовать в различных ситуациях, когда вам нужно предоставить значение по умолчанию для переменной, и теперь он широко поддерживается современными браузерами. Если вы еще не используете Nullish Coalescing в своем коде JavaScript, определенно стоит рассмотреть его как способ улучшить качество кода и снизить риск ошибок.