Нулевой оператор объединения (??)
Нулевой оператор объединения (??) — это новый оператор, представленный в ECMAScript 2020 (также известный как ES11). Он используется для предоставления значения по умолчанию, когда переменная имеет значение null или не определена.
В JavaScript, когда вы хотите установить значение по умолчанию для переменной, которая может быть нулевой или неопределенной, вы часто используете логический оператор ИЛИ (||). Например:
Однако у этого подхода есть ограничение: если переменная является ложной, но не нулевой или неопределенной (например, это может быть пустая строка или число 0), значение по умолчанию все равно будет присвоено. Например:
Для решения этой проблемы был введен нулевой оператор объединения (??). Он проверяет только нулевые или неопределенные значения и игнорирует другие ложные значения. Например:
Таким образом, оператор объединения Nullish позволяет более точно и безопасно предоставлять значения по умолчанию для переменных, которые могут быть нулевыми или неопределенными.