Рубрики
Без рубрики

Как работает Nullish Coalescing оператор в JavaScript

ES11 добавил Nullish Coalescing Operator, который обозначается двойным вопросительным знакам, как это: ??. В этой статье мы рассмотрим, почему это так полезно и как его использовать. Давайте начнем. Фон Информация о JavaScript, есть логический или оператор короткого замыкания или оператора ||. || Оператор возвращает первую правду

Автор оригинала: FreeCodeCamp Community Member.

ES11 добавил Nullish Coalescing оператор, который обозначается двойным вопросительным знакам, как это: ?? Отказ

В этой статье мы рассмотрим, почему это так полезно и как его использовать.

Давайте начнем.

Исходная информация

В JavaScript есть логический или оператор короткого замыкания или оператора

Ниже приведены только шесть Значения, которые считаются Falsy Значения в JavaScript.

  • ложный
  • неопределенный
  • ноль
  • “”(пустая строка)
  • Нан
  • 0

Так что, если ничего не в указанном списке, то он будет считаться правда значение.

Правда и Falsy Значения – это не-логические значения, которые принуждены к правда или ложь при выполнении определенных операций.

const value1 = 1;
const value2 = 23;

const result = value1 || value2; 

console.log(result); // 1

Как Оператор возвращает первый правда Значение, в вышеуказанном коде, Результат будет стоить, хранящуюся в Value1 который является 1

Если Value1 это null , undefined , Пустой или любой другой Falsy Значение, то следующий операнд после

const value1 = 0;
const value2 = 23;
const value3 = "Hello";

const result = value1 || value2 || value3; 

console.log(result); // 23

Вот, потому что Value1 0, Значение2 будет проверен. Как это правдоподобное значение, результат всего выражения будет Значение2 Отказ

Если кто-то из этого является первым операндом || Затем мы получим второй операнд в результате.

Почему JavaScript нуждается в Nullish Coalescing Operator

Оператор работает отлично, но иногда мы хотим только следующее выражение, чтобы оценить, когда первый операнд только null или undefined

Следовательно, ES11 добавил Nullish Coalescing Operator.

В выражении Икс ?? y ,

  • Если x либо null или undefined Тогда только Результат будет y Отказ
  • Если х это не null или undefined Тогда результат будет х Отказ

Это сделает условные проверки и код отладки легкой задачей.

Попробуй сам

let result = undefined ?? "Hello";
console.log(result); // Hello

result = null ?? true; 
console.log(result); // true

result = false ?? true;
console.log(result); // false

result = 45 ?? true; 
console.log(result); // 45

result = "" ?? true; 
console.log(result); // ""

result = NaN ?? true; 
console.log(result); // NaN

result = 4 > 5 ?? true; 
console.log(result); // false because 4 > 5 evaluates to false

result = 4 < 5 ?? true;
console.log(result); // true because 4 < 5 evaluates to true

result = [1, 2, 3] ?? true;
console.log(result); // [1, 2, 3]

Итак, от всех вышеуказанных примеров, ясно, что результат операции Икс ?? y это y только когда х это либо undefined или null Отказ

Во всех других случаях результат операции всегда будет х Отказ

Заключение

Как вы видели, Nullish Coalescing оператор действительно полезен, когда вы заботитесь только о null или undefined Значение для любой переменной.

Начиная с ES6, есть много полезных дополнений к JavaScript, как

  • Разрушение ES6
  • Импорт и синтаксис экспорта
  • Функции стрелки
  • Обещания
  • Async/a ждать
  • Необязательный оператор цепи

и многое другое.

Вы можете узнать все обо всех функциях ES6 + подробно в Овладение современным JavaScript книга.

Вы можете Получите освоение современной JavaScript Country скидка на 40% Отказ

Подписаться на мой Еженедельная рассылка Чтобы вступить в 1000+ других подписчиков, чтобы получить удивительные советы, трюки, статьи и скидки непосредственно в вашем почтовом ящике.