gpt4 book ai didi

javascript - 在没有 ARRAY 的 Node JS 中循环 JSON

转载 作者:行者123 更新时间:2023-12-03 02:29:26 25 4
gpt4 key购买 nike

我收到来自 API 的响应,其中 JSON 不在数组中,如下所示

{
"TV": {
"USD": 9677.25,
"EUR": 7768.87,
"JPY": 1072773.87,
"GBP": 6898.93,
"AUD": 12294.15,
"CAD": 12056.19
},
"Lamp": {
"USD": 231.35,
"EUR": 185.89,
"JPY": 25735.85,
"GBP": 168.82,
"AUD": 296.7,
"CAD": 283
}
}

如果它是数组,我可以使用 .map 函数,但在这种情况下,我如何在循环时显示数据,因为来自 API 的数据在每次调用时可能都不同。

我正在寻找的所需格式是

[{
"PRODUCT": "TV",
"PRICE": {
"USD": 9677.25,
"EUR": 7768.87,
"JPY": 1072773.87,
"GBP": 6898.93,
"AUD": 12294.15,
"CAD": 12056.19
}
}, {
"PRODUCT": "Lamp",
"PRICE": {
"USD": 231.35,
"EUR": 185.89,
"JPY": 25735.85,
"GBP": 168.82,
"AUD": 296.7,
"CAD": 283
}
}]

请帮忙..

最佳答案

您可以使用 Object.keys() 迭代数据的每个键,然后使用 array#map,您可以使用对象创建结果数组。

var data = { "TV": { "USD": 9677.25, "EUR": 7768.87, "JPY": 1072773.87, "GBP": 6898.93, "AUD": 12294.15, "CAD": 12056.19 }, "Lamp": { "USD": 231.35, "EUR": 185.89, "JPY": 25735.85, "GBP": 168.82, "AUD": 296.7, "CAD": 283 } },
result = Object.keys(data).map(k => ({PRODUCT: k, PRICE: data[k]}));
console.log(result);

关于javascript - 在没有 ARRAY 的 Node JS 中循环 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48799937/

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