В ES11 добавлен нулевой оператор объединения, который обозначается двойными вопросительными знаками, например: ??
Для чего нужен этот оператор:
Оператор || отлично работает, но иногда мы хотим, чтобы следующее выражение оценивалось только тогда, когда первый операнд либо null, либо undefined.
Поэтому вводится нулевой оператор объединения.
давайте возьмем это с примером-
В выражении а?? б,
Если a имеет значение null или не определено, результатом будет только b.
Если a не равно null или undefined, результатом будет быть а.
Это упростит условные проверки и отладку кода.
Попробуй сам:
пусть результат = неопределенный ?? «Привет»;
console.log(результат); // Привет
результат = ноль ?? истинный;
console.log(результат); // истинный
результат = ложь ?? true;
console.log(результат); // ложный
результат = 45 ?? истинный;
console.log(результат); // 45
Таким образом, из всех приведенных выше примеров видно, что результатом операции x ?? y
является y
только тогда, когда x
равно undefined
или null.
.
Вывод
Как вы видели, оператор объединения Nullish действительно полезен, когда вас интересует только значение null
или undefined
для любой переменной.