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

JavaScript如何计算时间戳数组相邻元素差值及代码错误排查

代码错误点梳理

  • 错误1:数组初始化错误
    let timeArray = [records] 这行代码会把原本就是一维数组的records整体作为新数组的第一个元素,最终得到的timeArray是仅包含1个元素的二维数组,循环i < timeArray.length的条件从一开始就不会触发(i初始值为1,timeArray.length值为1)。
  • 错误2:无效的属性访问
    records数组存储的都是纯数字类型的时间戳,没有.time属性,代码中所有timeArray[i].time的访问逻辑完全不符合数据结构。
  • 错误3:差值计算逻辑错误
    你写的timeArray[i].time - timeArray[i].time[i - 1]完全不符合需求,正确逻辑应该是当前位置的时间戳减去前一个位置的时间戳。

修复后可运行代码

const records = [1612271438035, 1612271489789, 1612271498250, 1612271498756, 1612271499731, 1612271507831, 1612271508337, 1612271509048, 1612271511891, 1612271511895, 1612271512084, 1612271519936, 1612271520438, 1612271521713, 1612271525260, 1612271525264, 1612271527431, 1612271544137, 1612271544640, 1612271546389, 1612271551144, 1612271551646, 1612271553157, 1612271553163, 1612271557885, 1612271558028, 1612271558032, 1612271559399, 1612271559402, 1612271564461, 1612271564566, 1612271564570, 1612271564572, 1612271564577, 1612271567860, 1612271567863, 1612271568180, 1612271573603, 1612271573607, 1612271601243, 1612271601355, 1612271603883, 1612271604061, 1612271608817, 1612271608930, 1612271612965, 1612271613999];

function timeInteraction() {
  const timeArray = records;
  const newArray = [];
  for (let i = 1; i < timeArray.length; i++) {
    const diff = timeArray[i] - timeArray[i-1];
    newArray.push(diff);
  }
  console.log(newArray);
  return newArray;
}
timeInteraction();

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.10 13:12:01