我想简化一个对象数组.我们假设我有以下数组:
var users = [{
name: 'John',
email: 'johnson@mail.com',
age: 25,
address: 'USA'
},
{
name: 'Tom',
email: 'tom@mail.com',
age: 35,
address: 'England'
},
{
name: 'Mark',
email: 'mark@mail.com',
age: 28,
address: 'England'
}];
Run Code Online (Sandbox Code Playgroud)
并过滤对象:
var filter = {address: 'England', name: 'Mark'};
Run Code Online (Sandbox Code Playgroud)
例如,我需要按地址和名称过滤所有用户,所以我循环过滤器对象属性并检查出来:
function filterUsers (users, filter) {
var result = [];
for (var prop in filter) {
if (filter.hasOwnProperty(prop)) {
//at the first iteration prop will be address
for (var i = 0; i < filter.length; i++) {
if …
Run Code Online (Sandbox Code Playgroud)