我正在使用API中的数据创建一个React应用程序。响应数据是一个很长的复杂对象,如下所示:
{
"Frozen Products": [
{
"_id": "6181849285e8d8f86be2d9df",
"name": "Peas (800g)",
"category_id": "6181841060c425f76e57b603",
"slug": "vegetables",
"quantity": 16,
"price": {
"amount": 3.00
},
"thumbnail":"URI ...",,
"images": [
"URI ...",
],
"synonyms": [
"Veggies"
],
},
//etc for many key/values inside this object ..
}
我需要访问的信息,一定要显示一个类别(在本例中为“冻结产品”)和所有产品的名称和图像。
但是我认为我需要通过loopin的索引(示例数据)来访问每个键/值对,而不是密钥名,因为它们的键是由API动态创建的。那么,我如何将其更改为:
{
[ "Frozen Products": [
{
"_id": "6181849285e8d8f86be2d9df",
"name": "Peas (800g)",
"category_id": "6181841060c425f76e57b603",
"slug": "vegetables",
"quantity": 16,
"price": {
"amount": 3.00
},
"thumbnail":"URI ...",,
"images": [
"URI ...",
],
"synonyms": [
"Veggies"
],
},
]
发布于 2021-12-18 14:02:29
我想你需要这样的东西:
let data = {
"Frozen Products": [
{
"_id": "6181849285e8d8f86be2d9df",
...
}
],
"Another Category": [...]
}
let categories = Object.keys(data).map((key) => ({categoryName: key, products: data[key]}));
发布于 2021-12-18 14:00:48
您可以使用for in
迭代器循环一个对象。不管关键名字是什么
for(key in object) {
let value = object[key];
}
https://stackoverflow.com/questions/70403961
复制相似问题