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

时间:2019-09-11 10:19:18

标签: javascript

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

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

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

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

exampleArray.every(validateDescription(element, 10))

1 个答案:

答案 0 :(得分:1)

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)
相关问题