我在获取对象内部级别的关键值时遇到问题。
这是示例对象
{
"dataset":{
"Categories":[
{
"Desserts":[
"Sweets",
"Ice Creams",
"Pastry",
"Moose",
"Jelly",
"Donut",
"Custard",
"Puddings",
"Cookies",
"Pies"
]
},
{
"Juices and Beverages":[
"Cold",
"Hot",
"Fresh",
"Mocktail",
"Sodas"
]
},
{
"Indian Breads":[
"Plain",
"Stuffed"
]
},
{
"Salads":[
"Green",
"Vegetable",
"Fruit"
]
},
{
"Soups":[
"Clear",
"Thick"
]
}
]
}
}
我尝试通过外层的对象进行交互。
for(var k in dataset.Categories)
categories.push(k);
但我得到的结果是 0,1,2,3,4。
如何获取关卡内部的键值?比如“甜点”、“果汁和饮料”、...
最佳答案
Categories
是一个数组,因此如果您对其使用 for..in
,您将获得的值是数组索引。
要获取所需的值,您可以使用:
var categoryNames = dataset.Categories.map(function (item) {
return Object.keys(item)[0];
});
关于javascript - 从内部级别获取 JSON 对象的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27741628/