gpt4 book ai didi

javascript - 检查一个数组是否包含在对象内部的另一个数组中

转载 作者:行者123 更新时间:2023-11-30 13:50:43 25 4
gpt4 key购买 nike

我正在努力尝试让(我认为很简单的)过滤器工作。

我有一个对象数组:

data: 
{
0: {key: 'abc', name: ['bob', 'john', 'steve']},
1: {key: 'def', name: ['bob']}
}

我正在尝试用一个数组来过滤对象数组:

filter: ['bob', 'john']

通过使用:

data.filter(v => v.name.includes(filter))

在上面,我希望返回 data[0],如果我将过滤器更改为 filter: ['bob'],那么将返回 data[0,1]。

不幸的是,没有返回任何东西 - 我似乎不太明白 - 这可能很简单,但任何见解都将不胜感激!

最佳答案

假设一个数组作为数据,您可以通过获取 name 数组进行过滤,并根据该数组检查每个过滤项。

var data = [{ key: 'abc', name: ['bob', 'john', 'steve'] }, { key: 'def', name: ['bob'] }],
filter = ['bob', 'john'],
result = data.filter(({ name }) => filter.every(f => name.includes(f)));

console.log(result);

关于javascript - 检查一个数组是否包含在对象内部的另一个数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58306933/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com