| 12345678910111213141516171819202122232425262728293031323334353637383940 | 
							- /** Error message constants. */
 
- var FUNC_ERROR_TEXT = 'Expected a function';
 
- /**
 
-  * Creates a function that negates the result of the predicate `func`. The
 
-  * `func` predicate is invoked with the `this` binding and arguments of the
 
-  * created function.
 
-  *
 
-  * @static
 
-  * @memberOf _
 
-  * @since 3.0.0
 
-  * @category Function
 
-  * @param {Function} predicate The predicate to negate.
 
-  * @returns {Function} Returns the new negated function.
 
-  * @example
 
-  *
 
-  * function isEven(n) {
 
-  *   return n % 2 == 0;
 
-  * }
 
-  *
 
-  * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));
 
-  * // => [1, 3, 5]
 
-  */
 
- function negate(predicate) {
 
-   if (typeof predicate != 'function') {
 
-     throw new TypeError(FUNC_ERROR_TEXT);
 
-   }
 
-   return function() {
 
-     var args = arguments;
 
-     switch (args.length) {
 
-       case 0: return !predicate.call(this);
 
-       case 1: return !predicate.call(this, args[0]);
 
-       case 2: return !predicate.call(this, args[0], args[1]);
 
-       case 3: return !predicate.call(this, args[0], args[1], args[2]);
 
-     }
 
-     return !predicate.apply(this, args);
 
-   };
 
- }
 
- module.exports = negate;
 
 
  |