我有一个三元函数
const resetCompletion = completed < 0 ? 0 : completed > 100 ? 100 : completed;
我需要将它转换为if else if else
块的一个简单函数。什么应该是正确的方式?
下面的代码片段可能相当于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〃