Javascript 如何编写一个数组过滤器,返回另一个数组中的所有数组项

Javascript 如何编写一个数组过滤器,返回另一个数组中的所有数组项,javascript,Javascript,我需要一个过滤器,将返回在assignedRoles中的所有项目 因此,在上面的示例中,过滤器将返回“User”和“InCharge” 这就是我尝试过的: assignedRoles = ['User','InCharge']; items = ['Admin','Supervisor','User', 'InCharge']; 使用indexOf() var assignedRoles=['User','InCharge']; var items=['Admin'、'Supervisor'

我需要一个过滤器,将返回在assignedRoles中的所有项目

因此,在上面的示例中,过滤器将返回“User”和“InCharge”

这就是我尝试过的:

assignedRoles = ['User','InCharge'];
items = ['Admin','Supervisor','User', 'InCharge'];
使用
indexOf()

var assignedRoles=['User','InCharge'];
var items=['Admin'、'Supervisor'、'User'、'InCharge'];
var answer=items.filter(函数(项){
返回指定的表。索引(项)>-1;
});
控制台日志(应答)使用
indexOf()

var assignedRoles=['User','InCharge'];
var items=['Admin'、'Supervisor'、'User'、'InCharge'];
var answer=items.filter(函数(项){
返回指定的表。索引(项)>-1;
});

控制台日志(应答)只需使用
assignedRoles.indexOf()!=-1
x!=-1
x>-1
x>=0
快)

var assignedRoles=['User','InCharge'];
var items=['Admin'、'Supervisor'、'User'、'InCharge'];
var result=items.filter(函数(项){
返回分配的角色。indexOf(item)!=-1;
});

控制台日志(结果)只需使用
assignedRoles.indexOf()!=-1
x!=-1
x>-1
x>=0
快)

var assignedRoles=['User','InCharge'];
var items=['Admin'、'Supervisor'、'User'、'InCharge'];
var result=items.filter(函数(项){
返回分配的角色。indexOf(item)!=-1;
});

控制台日志(结果)x>=0
,对我来说,它说的是最清楚的。只是出于好奇,你怎么知道它更快?如果是,要快多少?让我检查一下。网络上有一个测试工具,我最喜欢
x>=0
,对我来说,它说的是最清楚的。
return items.filter(a=> a.any(assignedRoles);