Метод some

Метод some проверяет элементы массива в соответствии с переданной функцией. Эта функция передается параметром метода и выполняется для каждого элемента массива.

Метод возвращает true, если хотя бы для одного элемента массива переданная функция вернет true, в противном случае метод возвращает false.

В функцию можно передавать 3 параметра. Если эти параметры есть (они не обязательны), то в первый автоматически попадет элемент массива, во второй попадет его номер в массиве (индекс), а в третий - сам массив.

Синтаксис

массив.some(function(элемент, индекс, массив) { return true или false; })

Пример

Проверим, есть ли в массиве чисел хотя бы одно положительное число:

let arr = [-1, -2, -3, 4]; let check = arr.some(function(elem) { if (elem >= 0) { return true; } else { return false; } }); console.log(check);

Результат выполнения кода:

true

Пример

Проверим, что хоты бы одно произведение элемента на его порядковый номер больше или равно 20:

let arr = [1, 2, 3, 4, 5]; let check = arr.some(function(elem, index) { if (elem * index >= 20) { return true; } else { return false; } }); console.log(check);

Результат выполнения кода:

true

Пример

При необходимости в третий параметр можно передать сам массив:

let check = arr.some(function(elem, index, arr) { тут будет доступен массив arr });

Смотрите также

  • метод every,
    который также позволяет выполнить проверку массива
  • методы map и forEach,
    которые позволяют применить функцию к каждому элементу массива
  • методы reduce и reduceRight,
    сворачивающие массив к одному значению