我需要解析json api响应,response.data等于:
[
{
"name": "Programming",
"subcategories": [
{"name": "web-development"},
{"name": "backend-development"},
{"name": "data-scince"}
]
},{
"name": "Design",
"subcategories": [
{"name": "Graphic-design"},
{"name": "Motion-design"},
{"name": "3D modeling"}
]我需要返回一个带有所有子类别的arrayString,例如“web开发”,“后端开发”... "3D建模“
我所做的一切就是:
let subs = categories.data.map(function(category) {
return category.subcategories.map(function(subcategory) {
return subcategory.name
})
})并且它返回带有类别的数组的数组。我敢肯定,这附近有一个更好和更容易的方法。谢谢!
发布于 2021-04-11 03:08:13
let data = [{
"name": "Programming",
"subcategories": [{
"name": "web-development"
},
{
"name": "backend-development"
},
{
"name": "data-scince"
}
]
}, {
"name": "Design",
"subcategories": [{
"name": "Graphic-design"
},
{
"name": "Motion-design"
},
{
"name": "3D modeling"
}
]
}]
let subs = data.flatMap(function(category) {
return category.subcategories.map(function(subcategory) {
return subcategory.name
})
})
console.log(subs)
尝试使用数组flatMap
发布于 2021-04-11 03:08:06
您可以通过替换以下内容来获得平面数组:
categories.data.map使用
categories.data.flatMaphttps://stackoverflow.com/questions/67038222
复制相似问题