要编写自己的 _.reject 函数,可以借鉴 Underscore JS 中的实现方法。下面是一个简单的示例解决方法:
// 自定义的 _.reject 函数
function myReject(array, predicate) {
var result = [];
for (var i = 0; i < array.length; i++) {
if (!predicate(array[i])) {
result.push(array[i]);
}
}
return result;
}
// 使用示例
var numbers = [1, 2, 3, 4, 5];
var evens = myReject(numbers, function(num) {
return num % 2 === 0;
});
console.log(evens); // 输出 [1, 3, 5]
在这个示例中,myReject 函数接受一个数组和一个断言函数作为参数。它遍历数组中的每个元素,并根据断言函数的返回值来决定是否将该元素添加到结果数组中。最后,返回结果数组。
在使用示例中,我们定义了一个 numbers 数组,并使用 myReject 函数过滤出其中的奇数。最后打印出 evens 数组,可以看到结果为 [1, 3, 5]。