javascript - 从数组中选择
问题描述
我有一个数组。如何获取组包含“confluence-developers”的所有用户的名称?
const users = [ {
"name" : "Mako",
"email" : "mail1@mail.com",
"admin" : false,
"profileUpdatable" : false,
"internalPasswordDisabled" : true,
"groups" : [ "readers" ]
}, {
"name" : "Arasy",
"email" : "mail2@mail.com",
"admin" : false,
"profileUpdatable" : false,
"internalPasswordDisabled" : true,
"groups" : [ "confluence-users", "readers", "confluence-developers" ]
}, {
"name" : "Eliza",
"email" : "mail3@mail.com",
"admin" : false,
"profileUpdatable" : false,
"internalPasswordDisabled" : true,
"groups" : [ "readers", "confluence-users" ]
}]
解决方案
使用filter()
, 然后map()
:
const users = [ {
"name" : "Mako",
"email" : "mail1@mail.com",
"admin" : false,
"profileUpdatable" : false,
"internalPasswordDisabled" : true,
"groups" : [ "readers" ]
}, {
"name" : "Arasy",
"email" : "mail2@mail.com",
"admin" : false,
"profileUpdatable" : false,
"internalPasswordDisabled" : true,
"groups" : [ "confluence-users", "readers", "confluence-developers" ]
}, {
"name" : "Eliza",
"email" : "mail3@mail.com",
"admin" : false,
"profileUpdatable" : false,
"internalPasswordDisabled" : true,
"groups" : [ "readers", "confluence-users" ]
}]
const confluence_user_names = users
.filter(user => user.groups.includes('confluence-users'))
.map(user => user.name);
console.log(confluence_user_names);
推荐阅读
- java - NoClassDefFoundError:运行 nifi 测试用例时的 org/apache/nifi/registry/VariableRegistry
- websocket - %xA 之类的二进制表示形式是什么?
- angular - Angular,错误拦截器,在不同的 url 上重试原始请求
- python - python上的整数列表可用于生成直方图或带有ggplot的箱线图?
- java - 奇怪的 NullPointerException 与 Hibernate 并获取类型 LAZY
- knockout.js - Url.Action 与 Knockout + Asp.Net MVC Core 2.2 错误
- android - 在kotlin中定义jave抽象类的对象
- javascript - 如何在 jQuery 中禁用提交按钮?
- hash - 键数的散列对象限制 - 大型递归查找 [SAS]
- load-balancing - 与任何条目不匹配的 IP 地址的 HAProxy 地理位置图