-1

我有一个三元函数

const resetCompletion = completed < 0 ? 0 : completed > 100 ? 100 : completed;

我需要将其转换为if else if else块的简单功能。正确的方法应该是什么?

4

2 回答 2

1

它可以扩展到这样的东西:

let resetCompletion = completed;

if (completed < 0) { resetCompletion = 0; }
else if (completed > 100) { resetCompletion = 100; }

这意味着“默认情况下,resetCompletion等于completion。但是,如果completed小于零,则resetCompletion等于零,否则如果completed大于 100,则resetCompletion等于 100”

于 2020-07-09T13:05:53.980 回答
1

以下代码片段可能等效于 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));

于 2020-07-09T13:11:33.433 回答