Javascript 如何将嵌套三元运算符拆分为正常if-else条件
我试图将三元运算符理解为正常的if-else条件Javascript 如何将嵌套三元运算符拆分为正常if-else条件,javascript,if-statement,conditional-statements,Javascript,If Statement,Conditional Statements,我试图将三元运算符理解为正常的if-else条件 stateable = data.length > 0 ? data[0].list > data[0].somelist ? Product.ADDING : Product.REMOVING : Product.NOTHING 如何理解此多重嵌套条件它等效于以下内容: let stateable; if (data.length === 0) { statable = Product.NOTHING; } else if
stateable =
data.length > 0
? data[0].list > data[0].somelist
? Product.ADDING
: Product.REMOVING
: Product.NOTHING
如何理解此多重嵌套条件它等效于以下内容:
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;
顺便问一下,同样的长度呢?