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

JavaScript如何遍历数组将数据填充至另一对象的对应数组属性

JavaScript 跨对象数组填充实现方法

需求是将sample.lin.clo数组中的所有元素,填充到objToAdd.clo空数组中,以下是几种常用实现方式:

  • 展开运算符+push(最简洁,无额外处理逻辑时优先用)
objToAdd.clo.push(...sample.lin.clo);

直接把原数组拆分为独立参数传入push,不需要手写遍历逻辑,代码量最少。

  • 基础for循环(兼容性最佳,适合遍历中需要加判断、字段改造的场景)
const sourceList = sample.lin.clo;
for (let i = 0; i < sourceList.length; i++) {
  // 此处可加过滤、字段加工逻辑,比如只push mode大于18的项
  objToAdd.clo.push(sourceList[i]);
}
  • forEach遍历(语义清晰,日常业务开发常用)
sample.lin.clo.forEach(item => {
  objToAdd.clo.push(item);
});
  • concat拼接(返回新数组,注意需要重新赋值目标属性)
objToAdd.clo = objToAdd.clo.concat(sample.lin.clo);

注意:示例中数组元素是对象类型,上述方法默认传入的是对象引用,修改目标数组内的对象属性会同步改动原数组的对应对象。如果需要两个数组的对象完全独立,遍历push时要做深拷贝,比如传入structuredClone(item)替代原item。

执行完成后打印objToAdd.clo就能得到预期结果:

console.log(objToAdd.clo)
// 输出: [ { mode: 19, id: 1 }, { mode: 18, id: 1 } ]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 00:36:28