code: function omit(object, callback, thisArg) {
        var isFunc = typeof callback == 'function',
            result = {};
  
        if (isFunc) {
          callback = lodash.createCallback(callback, thisArg);
        } else {
          var props = concat.apply(arrayRef, nativeSlice.call(arguments, 1));
        }
        forIn(object, function(value, key, object) {
          if (isFunc
                ? !callback(value, key, object)
                : indexOf(props, key) < 0
              ) {
            result[key] = value;
          }
        });
        return result;
      }
docs: Creates a shallow clone of `object` excluding the specified properties.
  Property names may be specified as individual arguments or as arrays of
  property names. If a `callback` function is passed, it will be executed
  for each property in the `object`, omitting the properties `callback`
  returns truthy for. The `callback` is bound to `thisArg` and invoked
  with three arguments; (value, key, object).
  
  @static
  @memberOf _
  @category Objects
  @param {Object} object The source object.
  @param {Function|String} callback|[prop1, prop2, ...] The properties to omit
  or the function called per iteration.
  @param {Mixed} [thisArg] The `this` binding of `callback`.
  @returns {Object} Returns an object without the omitted properties.
  @example
  
  _.omit({ 'name': 'moe', 'age': 40 }, 'age');
  // => { 'name': 'moe' }
  
  _.omit({ 'name': 'moe', 'age': 40 }, function(value) {
  return typeof value == 'number';
  });
  // => { 'name': 'moe' }