index.js
function remove(obj, keep) {
  if (!obj) return false;
  keep = keep || [];

  for (var prop in obj) {
    if (has.call(obj, prop) && !~keep.indexOf(prop)) {
      delete obj[prop];
    }
  }

  return true;
}
function remove(obj, keep) {
  if (!obj) return false;
  keep = keep || [];

  for (var prop in obj) {
    if (has.call(obj, prop) && !~keep.indexOf(prop)) {
      delete obj[prop];
    }
  }

  return true;
}
function remove ( obj , keep ) { if ( ! obj ) return false ; keep = keep || [ ] ; for ( var prop in obj ) { if ( has . call ( obj , prop ) && ! ~ keep . indexOf ( prop ) ) { delete obj [ prop ] ; } } return true ; }
Remove all enumerable properties from an given object.

@param {Object} obj The object that needs cleaning.
@param {Array} keep Properties that should be kept.
@api public
Remove all enumerable properties from an given object .