var users = [ { role: 'admin', email: 'fakeadmin1@email.com' }, { role: 'user', email: 'fake2@email.com' }, { role: 'admin', email: 'fakeadmin2@email.com' }, ]; function getUsers(master_user_list, wherefunc) { var user_list = []; for ( var i = 0; i < master_user_list.length; i++ ) { if ( wherefunc(master_user_list[i]) ) user_list.push(master_user_list[i]); } return user_list; } var admin_emails = getUsers(users,function (u) { return u.role == 'admin'; }).map(function (u) { return u.email; }); console.log(admin_emails);