JS 对象数组根据多个条件过滤
找出数组中status=success&&(name=Kevin||Lynn)并生成新数组
let array = [
{
date: '2016-05-02',
name: 'Ethan',
status: 'success',
total: '81'
},
{
date: '2016-05-04',
name: 'Lynn',
status: 'fail',
tag: '50'
},
{
date: '2016-05-01',
name: 'Kevin',
status: 'success',
tag: '20'
}];
let filterStatus = "success";//条件1
let filterNames = ['Lynn', 'Kevin'];//条件2
let result = array.filter((a,i)=>{
return ( a.status === filterStatus && filterNames.some(f=>(f === a.name)) )
})
来源链接 https://www.imooc.com/wenda/detail/510895