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

React JS中如何将嵌套数组内的set对象复制到新数组

问题描述

我有一个包含嵌套对象的大型数组,数组中的每个对象都包含一个名为set的对象,示例如下:

const arr1 = [
  {
    id: 1,
    subject: 'Subject',
    set: {
      title: 'Title',
      subTitle1: 'SubTitle',
      subTitle2: 'SubTitle',
    },
  },
  {
    id: 2,
    subject: 'Subject',
    set: {
      title: 'Title',
      subTitle1: 'SubTitle',
      subTitle2: 'SubTitle',
    },
  },
]

希望将arr1中每个set对象的内容提取到arr2中,预期效果如下:

const arr2 = [
  {
    title: 'Title',
    subTitle1: 'SubTitle',
    subTitle2: 'SubTitle',
  },
  {
    title: 'Title',
    subTitle1: 'SubTitle',
    subTitle2: 'SubTitle',
  },
]
解决方案

可以使用JavaScript的Array.prototype.map()方法直接提取每个元素的set属性,这是处理这类数组转换最简洁高效的方式:

const arr2 = arr1.map(item => item.set);

补充说明

  • map()方法会遍历数组的每一项,对每个元素执行传入的回调函数,最终返回一个由回调函数返回值组成的新数组
  • 如果数组中存在某个元素没有set属性,可以添加判断避免报错:
const arr2 = arr1.map(item => item?.set || {});

这里使用了可选链操作符?.和逻辑或||,确保即使元素没有set属性,也会返回一个空对象而非undefined

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 06:54:46