【发布时间】:2021-11-05 10:49:18
【问题描述】:
我有一个用户数组,每个用户都有一个标签数组 我有一组选定的标签 ES6 中按选定标签过滤用户的最佳方法是什么
const users = [
{
username: "john",
tags: [{id:1}, {id:3},{id:5},{id:7}]
},
{
username: "becky",
tags: [{id:1}, {id:7},{id:6}]
},
{
username: "susy",
tags: [{id:1}, {id:4},{id:5}]
},
{
username: "tyson",
tags: [{id:3},{id:5}]
},
];
我选择的标签是
let tagIds = [7,5];
我希望收到如下结果
users = [
{
username: "john",
tags: [{id:1}, {id:3},{id:5},{id:7}]
},
];
【问题讨论】:
-
你可以使用
array#filter -
但是如何实现
-
理想情况下,您的标签应该是
[1,3,5,7]而不是[{id:1},{id:3},{id:5},{id:7}]。 -
嗨 jarmod 我简化了这个问题的对象,用户中的标签也有其他属性,比如名称类别
标签: javascript arrays angular