collection/reject.jsjavascript
import { entries, toIteratee } from '../_internal/iteratee'
/**
* 返回不满足条件的集合元素。
* @function reject
* @memberof module:collection
* @param {Array|Object} collection 要遍历的数组或普通对象
* @param {Function|string|number|Array|Object} [predicate] 判断函数或 iteratee 简写
* @returns {Array} 被拒绝条件的元素数组
* @throws {TypeError} 集合或 predicate 类型不正确时抛出
*/
function reject(collection, predicate) {
const fn = toIteratee(predicate)
return entries(collection).filter(([key, value]) => !fn(value, key, collection)).map(([, value]) => value)
}
export default reject