看看这段代码:
var array = [0, 1];
var even = function(element, index, array, considerZeroEven) {
// checks whether an element is even
if (element === 0)
return considerZeroEven;
return element % 2 === 0;
};
console.log(array.some(even)); // Here I should do the trick...
是否可以传递到thinkZeroEven参数?
我看到我应该使用thisArg并在其中做一些肮脏的事情,但是我认为这不是一个好主意,看着the polyfill on MDN看起来它只会传递元素的值,即索引元素,以及遍历数组对象,因此无能为力。
答案 0 :(得分:4)
您可以关闭considerZeroEven
的期望值,而仅使用一个函数作为回调,而无需使用thisArg
。
var array = [0, 1],
even = function (considerZeroEven) {
return function(element, index, array) {
return element === 0
? considerZeroEven
: element % 2 === 0;
};
};
console.log(array.some(even(false)));