为了账号安全,请及时绑定邮箱和手机立即绑定

返回函数参数与给定数字之间的差异,下边距有限

返回函数参数与给定数字之间的差异,下边距有限

哆啦的时光机 2023-06-15 17:29:15
我这里有这段代码 (JavaScript),似乎我可以在一条指令中重构它,也许使用模数 ( %)?(注意:n总是在0到6之间,其他情况不用处理)switch (n) {  case 0:     return 1  case 1:    return 7  case 2:    return 6  case 3:    return 5  case 4:    return 4  case 5:    return 3  case 6:    return 2}我可以做:if (n === 0) {  return 1} return (8 - n)是否有更短的使用模数符号的方法可以做到这一点?
查看完整描述

3 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

更棘手的一个:return Math.max(8-n, 1),它也将涵盖底片



查看完整回答
反对 回复 2023-06-15
?
蓝山帝景

TA贡献1843条经验 获得超7个赞

这是模数版本:


const inputs = [0, 1, 2, 3, 4, 5, 6];


function fn(x) {

  return 7 - ((x + 6) % 7);

}


console.log(inputs.map(fn))


查看完整回答
反对 回复 2023-06-15
?
红颜莎娜

TA贡献1842条经验 获得超12个赞

我会使用条件运算符:

return n === 0 ? 1 : 8 - n;


查看完整回答
反对 回复 2023-06-15
  • 3 回答
  • 0 关注
  • 118 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信