d7d045354b41082b5223a346e795b4acfcd8cbab
[yaffs-website] / node_modules / grunt-legacy-util / node_modules / lodash / omitBy.js
1 var baseIteratee = require('./_baseIteratee'),
2     basePickBy = require('./_basePickBy');
3
4 /**
5  * The opposite of `_.pickBy`; this method creates an object composed of the
6  * own and inherited enumerable properties of `object` that `predicate`
7  * doesn't return truthy for.
8  *
9  * @static
10  * @memberOf _
11  * @category Object
12  * @param {Object} object The source object.
13  * @param {Function|Object|string} [predicate=_.identity] The function invoked per property.
14  * @returns {Object} Returns the new object.
15  * @example
16  *
17  * var object = { 'a': 1, 'b': '2', 'c': 3 };
18  *
19  * _.omitBy(object, _.isNumber);
20  * // => { 'b': '2' }
21  */
22 function omitBy(object, predicate) {
23   predicate = baseIteratee(predicate, 2);
24   return basePickBy(object, function(value, key) {
25     return !predicate(value, key);
26   });
27 }
28
29 module.exports = omitBy;