繁体   English   中英

如何使用它们的键从嵌套的 JSON 数据数组中提取最内层的值?

[英]How can I extract innermost value from an array of nested JSON data using their keys?

以下数据结构是一个数组,每个数组元素都是一个带有键的对象:

this.objectImWorkingWith = [
  {
    "1306": {
      "id": 6460,
      "data": "Process",
    },
    "1307": {
      "id": 6461,
      "data": "1287",
    },
    "1309”: {
      "id": 6462,
      "data": “2748”,
    }
  },
  {
    "1306": {
      "id": 6465,
      "data": "Product",
    },
    "1307": {
      "id": 6466,
      "data": "2574",
    },
    "1309”: {
      "id": 6263,
      "data": “3752”,
    }
  },
  {
    "1306": {
      "id": 6470,
      "data": "Research",
    },
    "1307": {
      "id": 6471,
      "data": "3861",
    },
    "1307": {
      "id": 6472,
      "data": “2248”,
    }
  }
]

数组中的每个元素都有多个对象,我想在保留结构的同时检索父对象中每个对象的“数据”值。 这意味着我想保留例如 Process、1287 和 2748 组合在一起等等。

所以总而言之,我的目标是获取数组中每个对象的“数据”值,但将数组中同一对象中的所有数据值保留为彼此关联。

我试过了

Object(this.allRelevantData.map(a=>a.data))

然而它产生

[undefined, undefined, undefined]

你可以试试这个:

var objectImWorkingWith = [
  {
    1306: {
      id: 6460,
      data: "Process",
    },
    1307: {
      id: 6461,
      data: "1287",
    },
    1309: {
      id: 6462,
      data: "2748",
    },
  },
  {
    1306: {
      id: 6465,
      data: "Product",
    },
    1307: {
      id: 6466,
      data: "2574",
    },
    1309: {
      id: 6263,
      data: "3752",
    },
  },
  {
    1306: {
      id: 6470,
      data: "Research",
    },
    1307: {
      id: 6471,
      data: "3861",
    },
    1307: {
      id: 6472,
      data: "2248",
    },
  },
];

const result = objectImWorkingWith.map((object) => {
  const data = [];
  for (var key of Object.keys(object)) {
    data.push(object[key].data);
  }

  return data;
});

变量结果将包含:[["Process", "1287", "2748"], ["Product", "2574", "3752"],...]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM