cnsd007 2009-06-03 11:11
浏览 537
已采纳

javascript 数组差值计算

我有个数组
数组内的原始值是[1,4,7,9,20,45,67,89,97],依次顺序排列
我现在想得到,后一个元素,-前一个元素的,差值,
用JavaScript怎么写恩

  • 写回答

2条回答 默认 最新

  • wanghaolovezlq 2009-06-09 23:25
    关注

    [code="java"]
    function mergeToRanges(ary) {
    var acc = null
    var last = null
    for (var i = 0; i < ary.length; i++) {
    var e = ary[i]
    if (!acc) {
    last = [e]
    acc = [last]
    } else if (1 == last.length && last[0] + 1 == e) {
    last = [last[0], e]
    acc[acc.length-1] = last
    } else if (2 == last.length && last[1] + 1 == e) {
    last = [last[0], e]
    acc[acc.length-1] = last
    } else {
    last = [e]
    acc = acc.concat(last)
    }
    }
    return acc
    }

    mergeToRanges([1,2,3,6,9,20,21,34,45,67,68]).join('\n')
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件