我正在尝试过滤一组 JSON 对象。我是 JavaScript 的新手,并试图用我曾经使用过的编码语言来完成它。基本上,我想采用以下对象数组。
var result = [
{
date : '2016-11-21',
name: 'Bob',
score: 0.1034947
},
{
date : '2016-10-21',
name: 'Bill',
score: 0.2081911},
{
date : '2016-10-21',
name: 'Mary',
score: 0.234947
},
{
date : '2016-10-21',
name: 'Bob',
score: 0.1034947
},
{
date : '2016-11-21',
name: 'Bill',
score: 0.2081911},
{
date : '2016-11-21',
name: 'Mary',
score: 0.234947
},
{
date : '2016-12-21',
name: 'Bob',
score: 0.1034947
},
{
date : '2016-12-21',
name: 'Bill',
score: 0.2081911},
{
date : '2016-12-21',
name: 'Mary',
score: 0.234947
}
]
然后我想根据对象进行过滤。所以例如。
var selected_Names = ['Bob','Mary']
我只想在这种情况下返回 Bob 和 Mary 的信息。
[
{
date : '2016-11-21',
name: 'Bob',
score: 0.1034947
},
{
date : '2016-10-21',
name: 'Mary',
score: 0.234947
},
{
date : '2016-10-21',
name: 'Bob',
score: 0.1034947
},
{
date : '2016-11-21',
name: 'Mary',
score: 0.234947
},
{
date : '2016-12-21',
name: 'Bob',
score: 0.1034947
},
{
date : '2016-12-21',
name: 'Mary',
score: 0.234947
}
]
谢谢!
const result = [{date:'2016-11-21',name:'Bob',score:0.1034947},{date:'2016-10-21',name:'Bill',score:0.2081911},{date:'2016-10-21',name:'Mary',score:0.234947},{date:'2016-10-21',name:'Bob',score:0.1034947},{date:'2016-11-21',name:'Bill',score:0.2081911},{date:'2016-11-21',name:'Mary',score:0.234947},{date:'2016-12-21',name:'Bob',score:0.1034947},{date:'2016-12-21',name:'Bill',score:0.2081911},{date:'2016-12-21',name:'Mary',score:0.234947}];
const filterNames = arr => names => arr.filter(e => names.includes(e.name));
const names = ['Bob', 'Mary'];
const res = filterNames(result)(names);
console.log(JSON.stringify(res, null, 2));
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句