gpt4 book ai didi

javascript - 尝试弄清楚如何将具有多个条件的长三元运算符转换为长 if 语句

转载 作者:行者123 更新时间:2023-12-01 00:06:00 26 4
gpt4 key购买 nike

我在网上找到了这个片段,我正在尝试弄清楚如何在计划 if 语句中翻译它:

return a.price > b.price ? 1 : a.price === b.price ? a.name > b.name ? 1 : -1 : -1;

在我看来,如果我写了一个 if 语句:

if (a.price > b.price) {
return 1;
} else if (a.price === b.price) {
return 1;
} else if (a.name > b.name) {
return 1;
} else {
return -1;
}

但我不太确定问号是什么意思,紧接着另一个问号,冒号也有同样的问题。我明白了,在这种情况下,冒号可能是 else if 语句(按此顺序),但是问号呢?有什么提示吗?

最佳答案

像这样分组会有帮助

a.价格> b.价格? 1 : (a.price === b.price ? (a.name > b.name ? 1 : -1) : -1)

a.price > b.price ? 1 : x
x = a.price === b.price ? y : -1;
y = a.name > b.name ? 1 : -1;

翻译后的 IF ELSE 为

if(a.price > b.price){
return 1
} else {
if(a.price === b.price){
if(a.name > b.name){
return 1;
} else {
return -1;
}
} else {
return -1;
}
}

关于javascript - 尝试弄清楚如何将具有多个条件的长三元运算符转换为长 if 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60392838/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com