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

如何访问数组中对象内部的子数组?以提取input的sub_categories为例

如何访问数组中对象的子数组并提取指定内容?

针对你给出的输入数组,要提取其中对象的sub_categories子数组,可以通过以下方式实现:

单对象场景(输入数组仅含一个对象)

输入数组是包含单个对象的数组,先通过索引[0]获取数组中的目标对象,再直接访问其sub_categories属性即可得到子数组:

const input = [{
    "id": 3252,
    "title": "Payment",
    "sub_categories": [{
      "id": 3252,
      "subtitle": "House",
    }],
}];

// 提取目标子数组
const output = input[0].sub_categories;
console.log(output);
// 输出结果:[{ "id": 3252, "subtitle": "House" }]

多对象场景(输入数组含多个对象)

如果输入数组包含多个带sub_categories的对象,可根据需求选择不同提取方式:

  • 合并所有子数组为一维数组:用flatMap方法将每个对象的sub_categories展开合并
  • 保留各对象对应的子数组(二维数组):用map方法将每个对象的sub_categories作为新数组元素

示例代码:

const input = [
  {
    "id": 3252,
    "title": "Payment",
    "sub_categories": [{ "id": 3252, "subtitle": "House" }]
  },
  {
    "id": 3253,
    "title": "Shopping",
    "sub_categories": [{ "id": 3253, "subtitle": "Electronics" }]
  }
];

// 合并所有sub_categories为一维数组
const allSubCategories = input.flatMap(item => item.sub_categories);
console.log(allSubCategories);
// 输出:[{"id":3252,"subtitle":"House"},{"id":3253,"subtitle":"Electronics"}]

// 得到包含所有sub_categories的二维数组
const subCategoriesArray = input.map(item => item.sub_categories);
console.log(subCategoriesArray);
// 输出:[[{"id":3252,"subtitle":"House"}],[{"id":3253,"subtitle":"Electronics"}]]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 23:19:00