我有一个对象数组。
var input = [
{title: 'one', code: '1', desc: 'sds'},
{title: 'two', code: '2', desc: 'wewe'},
{title: 'three', code: '3', desc: 'dsf'}
];
我有一系列必需的属性说
var required = ['title', 'desc'];
和我所需的输出(基于输入和所需的数组)是
var output = [
{title: 'one', desc: 'sds'},
{title: 'two', desc: 'wewe'},
{title: 'three', desc: 'dsf'}
];
如何在jquery中完成,当然我可以使用$.each
然后检查每个对象属性来执行此操作。
但是可以使用$.map
或$.grep
或任何其他方法
答案 0 :(得分:2)
你可以使用Array.map
,不需要jQuery
var output = input.map(function(obj){
var rtn = {};
for(var i = 0; i < required.length; i++)
rtn[required[i]] = obj[required[i]]; // set the required properties
return rtn; // return it
});