#javascript #if-statement #conditional-statements
#javascript #if-оператор #условные операторы
Вопрос:
Я пытался понять троичный оператор в нормальном условии if else.
stateable =
data.length > 0
? data[0].list > data[0].somelist
? Product.ADDING
: Product.REMOVING
: Product.NOTHING
как понять это множественное вложенное условие
Комментарии:
1. кстати, как насчет одинаковой длины?
Ответ №1:
Это эквивалентно следующему:
let stateable;
if (data.length === 0) {
statable = Product.NOTHING;
} else if (data[0].list > data[0].somelist) {
statable = Product.ADDING;
} else {
statable = Product.REMOVING;
}
Подход с условным оператором можно было бы переработать, чтобы сделать его более читаемым, поставив сначала условие NOTHING , если вы хотите:
const stateable = data.length === 0
? Product.NOTHING
: data[0].list > data[0].somelist
? Product.ADDING
: Product.REMOVING;