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

计算数组中元素的总数,即大于同一数组中的前一个元素

计算数组中元素的总数,即大于同一数组中的前一个元素

慕森卡 2021-10-14 11:02:43
我正在跟踪一系列长跑的里程数。我想计算取得进展的次数(即记录距离超过先前记录距离的次数)。我相信 .every() 方法在这里对我有用。我需要一个计数器,每当它找到一个大于前一个项目的项目时,它就会增加一个。这是我自己无法生成的最后一点功能逻辑。const progressDays = (runs) => {return runs.reduce(aFunc, 0)    }const aFunc = (total, num) => {   //the logic I need goes here}}console.log(progressDays([3, 4, 1, 2]))我希望上述代码的输出为 2,因为有 2 次 (3->4) 和 (1->2) 取得了进展。
查看完整描述

2 回答

?
MYYA

TA贡献1868条经验 获得超4个赞

您可以通过使用减少的索引进行解构来减少数组并从数组中获取实际值和前一个值。然后用条件数。


const

    progressDays = runs => runs.reduce(check, 0), 

    check = (total, num, i, { [i - 1]: prev }) => total + (prev < num);


console.log(progressDays([3, 4, 1, 2]));


查看完整回答
反对 回复 2021-10-14
  • 2 回答
  • 0 关注
  • 190 浏览
慕课专栏
更多

添加回答

举报

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