123456789101112131415161718192021222324 |
- var restArguments = require('./restArguments.js');
- var isFunction = require('./isFunction.js');
- var negate = require('./negate.js');
- var map = require('./map.js');
- var _flatten = require('./_flatten.js');
- var contains = require('./contains.js');
- var pick = require('./pick.js');
-
- // Return a copy of the object without the disallowed properties.
- var omit = restArguments(function(obj, keys) {
- var iteratee = keys[0], context;
- if (isFunction(iteratee)) {
- iteratee = negate(iteratee);
- if (keys.length > 1) context = keys[1];
- } else {
- keys = map(_flatten(keys, false, false), String);
- iteratee = function(value, key) {
- return !contains(keys, key);
- };
- }
- return pick(obj, iteratee, context);
- });
-
- module.exports = omit;
|