gpt4 book ai didi

javascript - 在 Javascript 中将 json 对象内的 JSON 对象转换为 JSON 数组

转载 作者:行者123 更新时间:2023-12-03 08:13:20 25 4
gpt4 key购买 nike

您好,我有以下 JSON 结构,我尝试在每个对象内创建每个对象的数组,但有一种方法可以转换它,而无需迭代每个元素并获取每个元素。或者也许使用 Javascript 函数来获取对象内部的对象并转换为数组?

{
"ES": {
"130": {
"code": "A Coruсa",
"name": "A Coruña"
},
"131": {
"code": "Alava",
"name": "Alava"
},
"...": {
"code": "...",
"name": "..."
}
},
"CH": {
"104": {
"code": "AG",
"name": "Aargau"
},
"...": {
"code": "...",
"name": "..."
}
},
"...": {
"...": {
"code": "...",
"name": "..."
}
}
}

这就是我正在寻找的:

[
{
"code": "A Coruсa",
"name": "A Coruña"
},
{
"code": "Alava",
"name": "Alava"
},
{
"code": "...",
"name": "..."
},
{
"code": "AG",
"name": "Aargau"
},
{
"code": "...",
"name": "..."
},
{
"code": "...",
"name": "..."
}
]

感谢您的帮助,我接受任何建议。

最佳答案

您可以使用Object.keys() , Array.prototype.reduce()Array.prototype.map()用于迭代属性和组装数组。

var obj = { "ES": { "130": { "code": "A Coruсa", "name": "A Coruña" }, "131": { "code": "Alava", "name": "Alava" }, }, "CH": { "104": { "code": "AG", "name": "Aargau" } } },
result = Object.keys(obj).reduce(function (r, k) {
return r.concat(Object.keys(obj[k]).map(function (kk) {
return obj[k][kk];
}));
}, []);

document.write('<pre>' + JSON.stringify(result, 0, 4) + '</pre>');

关于javascript - 在 Javascript 中将 json 对象内的 JSON 对象转换为 JSON 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34052641/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com