【发布时间】:2020-07-09 13:01:55
【问题描述】:
我有一个三元函数
const resetCompletion = completed < 0 ? 0 : completed > 100 ? 100 : completed;
我需要将其转换为if else if else 块的简单函数。正确的方法应该是什么?
【问题讨论】:
标签: javascript if-statement conditional-operator
我有一个三元函数
const resetCompletion = completed < 0 ? 0 : completed > 100 ? 100 : completed;
我需要将其转换为if else if else 块的简单函数。正确的方法应该是什么?
【问题讨论】:
标签: javascript if-statement conditional-operator
下面的代码 sn-p 可以等效于 if 块的三元运算。
const resetCompletion = completed => {
if (completed < 0) {
return 0;
}
if (completed > 100) {
return 100;
}
return completed;
};
let completed = 101;
console.log(resetCompletion(completed));
completed = -100;
console.log(resetCompletion(completed));
completed = 10;
console.log(resetCompletion(completed));
【讨论】:
它可以扩展成这样的:
let resetCompletion = completed;
if (completed < 0) { resetCompletion = 0; }
else if (completed > 100) { resetCompletion = 100; }
这意味着“默认情况下,resetCompletion 等于completion。但是,如果completed 小于零,则resetCompletion 等于零,否则如果completed 大于100,那么resetCompletion 等于 100"
【讨论】: