将当前元素 + 其他参数传递给 .each 回调函数



>我有一个函数来检查一个元素是否至少包含N个字符。此函数采用 2 个参数:元素和最小字符数。

validateDescription = (input, car) => {
descriptionInputLength = input.value.replace(/s/g, "").length;
valid = descriptionInputLength >= car;
return valid;
};

我想使用.every在数组的所有元素上执行此函数,但我不知道如何正确传递参数,因为它的函数是作为回调调用的。

我尝试了以下内容,这显然是不正确的(未定义元素(,但我正在努力弄清楚如何使其工作。

exampleArray.every(validateDescription(element, 10))

Every需要函数,或者引用函数作为参数。但是您正在传递布尔值(validateDescription()返回布尔值(

因此,您需要的是:

exampleArray.every(element => validateDescription(element, 10))

exampleArray.every(function(element) { return validateDescription(element, 10)})

function check(element) {
return validateDescription(element, 10)
}
exampleArray.every(check)

最新更新