如何将JavaScript三元表达式转换为含if-else-if-else的普通函数
转换三元表达式为if-else-if-else函数的实现
没问题,咱们先拆解原三元表达式的逻辑,再把它转成可读性更强的if-else-if-else语句块函数。
原三元表达式的逻辑其实是一个范围限制处理:
- 如果
completed小于0,就把它重置为0; - 如果
completed大于100,就把它重置为100; - 其他情况,保持
completed的原值不变。
对应的if-else-if-else函数实现如下:
function getResetCompletion(completed) { let resetValue; if (completed < 0) { resetValue = 0; } else if (completed > 100) { resetValue = 100; } else { resetValue = completed; } return resetValue; }
你也可以简化成直接返回值的写法,省去额外变量,逻辑同样清晰:
function getResetCompletion(completed) { if (completed < 0) { return 0; } else if (completed > 100) { return 100; } else { return completed; } }
这两种写法都完全等价于原三元表达式的逻辑,而且比嵌套三元结构更直观,尤其是对刚接触JavaScript的开发者来说,可读性会高很多。
内容的提问来源于stack exchange,提问作者ashfaqrafi
相关产品推荐
相关产品推荐

