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

如何为嵌套数组中的month子数组添加全局递增count字段?

实现全局递增count字段的方案

需求说明

给data数组中每个元素的month子数组内的所有对象,添加一个全局连续递增的count字段,count从1开始依次累加,不受外层数组元素的划分影响。

代码实现(直接修改原数组)

// 初始化全局计数器,从1开始
let count = 1;

// 遍历外层data数组
data.forEach(item => {
  // 遍历当前元素的month子数组
  item.month.forEach(monthItem => {
    // 为每个month元素添加count字段,随后计数器自增
    monthItem.count = count++;
  });
});

代码实现(生成新数组,保留原数组)

如果需要避免修改原数组结构,可通过解构生成新数组:

let count = 1;

const newData = data.map(item => ({
  ...item,
  month: item.month.map(monthItem => ({
    ...monthItem,
    count: count++
  }))
}));

逻辑说明

  • 用一个外部的count变量追踪全局递增数值,遍历全程不会重置计数器
  • 先遍历外层data元素,再逐个遍历每个元素下的month子数组,为子元素赋值当前count后立即自增,确保所有month元素的count值连续递增

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 11:22:05