You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请教JavaScript中range函数默认参数step=start<end?1:-1的含义

关于range函数中默认步长逻辑的解释

这行step = start < end ? 1 : -1是ES6参数默认值的写法,用三元运算符给step设置了智能默认规则:

  • 当起始值start小于结束值end时,默认步长设为1,生成递增序列,比如range(1,10)就会输出从1到10的连续数组。
  • 当起始值start大于等于结束值end时,默认步长设为-1,生成递减序列,比如调用range(5,2)不用传step,也能得到[5,4,3,2],和手动传-1的效果一致。

这个逻辑的好处是让range函数更易用——不管你要生成递增还是递减的数组,只要不传step,函数会自动根据起始值和结束值的大小关系判断方向,不用额外手动指定步长的正负。

比如你测试range(10,1),不需要传第三个参数,函数会自动用-1作为步长,输出[10,9,8,7,6,5,4,3,2,1]。

内容的提问来源于stack exchange,提问作者bardala

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 17:09:48