javascript - 如何从数组对象中的嵌套数组中获取数据
问题描述
我有一个像这样的对象数组
array = {
"microservices": [
{
"id": 1,
"permissions": [
{
"id": 65,
"name": "Default permission"
},
{
"id": 64,
"name": "Super user Access"
}
]
},
{
"id": 2,
"permissions": []
},
{
"id": 3,
"permissions": [
{
"id": 18,
"name": "Script: Update"
},
{
"id": 15,
"name": "Application: Delete"
},
{
"id": 9,
"name": "Workspace: Create"
}
]
}
]
}
从微服务数组我只想获得“权限”数组并存储到一个新变量,我搜索了它但没有得到任何相关的解决方案,在此先感谢
解决方案
您可以使用map
运算符并单独获取该特定属性。请检查下面的 JS 示例。
const array = {
"microservices": [{
"id": 1,
"permissions": [{
"id": 65,
"name": "Default permission"
},
{
"id": 64,
"name": "Super user Access"
}
]
},
{
"id": 2,
"permissions": []
},
{
"id": 3,
"permissions": [{
"id": 18,
"name": "Script: Update"
},
{
"id": 15,
"name": "Application: Delete"
},
{
"id": 9,
"name": "Workspace: Create"
}
]
}
]
}
const output = []
array.microservices.map(function(x) {
output.push(...x.permissions);
})
console.log(output);
推荐阅读
- javascript - ERR_HTTP_HEADERS_SENT 出现问题并警告承诺
- ios - 错误:此应用是使用 iOS 12.0 SDK 构建的。从 2019 年 3 月开始,所有提交到 App Store 的 iOS 应用程序都必须使用 iOS 12.1 SDK 构建
- python - O(n) 复杂度算法,无需 remove() 方法即可从未排序列表中删除值的实例
- java - 如何在带有firebase的android studio中创建一个类似“编辑个人资料图像”页面的火种/大黄蜂?
- elasticsearch - 如果它们包含特定字段,如何限制 Filebeat 仅将日志发送到 ELK?
- php - 如何在 php 中修复“未捕获的错误:在 null 上调用成员函数 insertOne()”
- python - 访问可调用迭代器对象的内容
- javascript - 如何在javascript / Google Apps脚本(GAS)中以点表示法打印出未知深度数组的所有对象属性
- php - Laravel Excel 传递变量
- java - Spring Boot 访问 application.properties 以进行 JUnit 测试