code: function filter(object, callback) {
  		if (!object) { return true; }
  		if (object.filter) { return object.filter(callback); }
  		if (object instanceof Array) {
  			var result = [],
  				length	= array ? array.length : 0;
  			for(var index = 0; index < length; index++) {
  				if (callback(array[index], index)) {
  					result.push(array[index]);
  				}
  			}
  		}else{
  			var result = {};
  			for(var key in object) {
  				if (!object.hasOwnProperty(key)) { continue; }
  				if (callback(object[key], key)) {
  					result[key] = object[key];
  				}
  			}
  		}
  		return false;
  	}
docs: Generic 'filter' function, return a copy of the array or object passed, with only the elements/properties that have successfully passed the `callback` function's validation.