joint.all.js
function omit(object, callback, thisArg) {
      var indexOf = getIndexOf(),
          isFunc = typeof callback == 'function',
          result = {};

      if (isFunc) {
        callback = lodash.createCallback(callback, thisArg, 3);
      } else {
        var props = baseFlatten(arguments, true, false, 1);
      }
      forIn(object, function(value, key, object) {
        if (isFunc
              ? !callback(value, key, object)
              : indexOf(props, key) < 0
            ) {
          result[key] = value;
        }
      });
      return result;
    }
function omit(object, callback, thisArg) {
      var indexOf = getIndexOf(),
          isFunc = typeof callback == 'function',
          result = {};

      if (isFunc) {
        callback = lodash.createCallback(callback, thisArg, 3);
      } else {
        var props = baseFlatten(arguments, true, false, 1);
      }
      forIn(object, function(value, key, object) {
        if (isFunc
              ? !callback(value, key, object)
              : indexOf(props, key) < 0
            ) {
          result[key] = value;
        }
      });
      return result;
    }
function omit ( object , callback , thisArg ) { var indexOf = getIndexOf ( ) , isFunc = typeof callback == 'function' , result = { } ; if ( isFunc ) { callback = lodash . createCallback ( callback , thisArg , 3 ) ; } else { var props = baseFlatten ( arguments , true , false , 1 ) ; } forIn ( object , function ( value , key , object ) { if ( isFunc ? ! callback ( value , key , object ) : indexOf ( props , key ) < 0 ) { result [ key ] = value ; } } ) ; return result ; }
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 is provided it will be executed for each
property of `object` omitting the properties the callback returns truey
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|string[]} [callback] The properties to omit or the
function called per iteration.
@param {*} [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' }
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 is provided it will be executed for each property of object omitting the properties the callback returns truey for . The callback is bound to thisArg and invoked with three arguments ; ( value key object ) .