Объясните синтаксис

console.log(day=="Sunday" ? rules:"");

Самое короткое решение что я нашёл, но я не до конца понимаю что тут написано.


Ответы (1 шт):

Автор решения: WalkMess

В вашем примере тернарная условная операция

условие ? выражение1 : выражение2  

условие - ваш вопрос, допустим 5 === 5

? - Символ который как бы спрашивает, что 5 === 5 ?

выражение1 - Условная цифра/строка/переменная которая вернется в случае true

выражение2 - Условная цифра/строка/переменная которая вернется в случае false

В простом примере это конструкция if / else, но короткая и от части удобная.

Ваш пример можно переписать


  if (day=="Sunday") { 
    rules;
  } 
  else { 
    ""; 
  } 
 

Но console.log() - возвращает результат метода.

Когда применять данный оператор? В его применении вас никто не ограничивает, но лучше он подойдет, когда у вас есть простая конструкция.


  const answer = 5+5 === 10 ? true : false;  
  console.log(answer);

  function getAnswer (d, b, c) { 
     return d + b === c ? c : d + b
  } 
  console.log(getAnswer(5,5,15)); 
  console.log(getAnswer(5,5,10));

→ Ссылка