Javascript json响应中的映射
我需要解析json api响应,response.data等于:Javascript json响应中的映射,javascript,arrays,json,Javascript,Arrays,Json,我需要解析json api响应,response.data等于: [ { "name": "Programming", "subcategories": [ {"name": "web-development"}, {"name": "backend-development"},
[
{
"name": "Programming",
"subcategories": [
{"name": "web-development"},
{"name": "backend-development"},
{"name": "data-scince"}
]
},{
"name": "Design",
"subcategories": [
{"name": "Graphic-design"},
{"name": "Motion-design"},
{"name": "3D modeling"}
]
我需要返回一个包含所有子类别的数组[String],例如[“web开发”、“后端开发”…“3D建模”]
我所做的只是:
let subs = categories.data.map(function(category) {
return category.subcategories.map(function(subcategory) {
return subcategory.name
})
})
它返回带有类别的数组数组。我确信,有一个更好更容易的办法。谢谢 您可以通过替换以下内容获得平面阵列:
categories.data.map
与
您可以通过替换以下内容获得平面阵列:
categories.data.map
与
let数据=[{
“名称”:“编程”,
“子类别”:[{
“名称”:“web开发”
},
{
“名称”:“后端开发”
},
{
“名称”:“数据科学”
}
]
}, {
“名称”:“设计”,
“子类别”:[{
“名称”:“平面设计”
},
{
“名称”:“运动设计”
},
{
“名称”:“三维建模”
}
]
}]
let subs=data.flatMap(函数(类别){
返回类别.子类别.映射(函数(子类别){
返回subcategory.name
})
})
console.log(subs)
let数据=[{
“名称”:“编程”,
“子类别”:[{
“名称”:“web开发”
},
{
“名称”:“后端开发”
},
{
“名称”:“数据科学”
}
]
}, {
“名称”:“设计”,
“子类别”:[{
“名称”:“平面设计”
},
{
“名称”:“运动设计”
},
{
“名称”:“三维建模”
}
]
}]
let subs=data.flatMap(函数(类别){
返回类别.子类别.映射(函数(子类别){
返回subcategory.name
})
})
console.log(subs)
是否与类别
相同?注意:这个数组来自API响应的事实与您的问题无关。response
是否与categories
相同?注意:这个数组来自API响应的事实与您的问题无关。