// Return an object who's members match a reference array of keys // reference=["b","c","f","r"]; // obj={"a":1, "b":2, "c":3, "d":4, "r":18}; // _.filterObj(obj, reference) // => { b : 2, c : 3, r : 18} _.mixin( { filterObj : function( obj, reference ) { if ( reference && typeof reference == 'object' ) { reference=_.keys( reference ); } var intersect = _.intersect(reference, _.keys(obj)), retObj= {}; _.map( intersect, function( el) { retObj[el]=obj[el];}) return retObj; } });