some 메서드

some 메서드는 전달된 함수에 따라 배열 요소를 확인합니다. 이 함수는 메서드의 매개변수로 전달되며 배열의 각 요소에 대해 실행됩니다. 메서드는 배열의 요소 중 적어도 하나에 대해 전달된 함수가 true를 반환하면 true를 반환하고, 그렇지 않으면 메서드는 false를 반환합니다.

함수에는 세 개의 매개변수를 전달할 수 있습니다. 이 매개변수가 있는 경우(필수는 아님), 첫 번째 매개변수에는 자동으로 배열 요소가, 두 번째 매개변수에는 배열 내의 번호(인덱스)가, 세 번째 매개변수에는 배열 자체가 전달됩니다.

구문

javascript배열.some(function(요소, 인덱스, 배열) {
  
});

예제

배열에 양수가 적어도 하나 있는지 확인해 봅시다:

javascriptlet arr = [-1, -2, -3, 4];

let check = arr.some(function(elem) {
  if (elem >= 0) {
    return true;
  } else {
    return false;
  }
});

console.log(check);

코드 실행 결과:

javascripttrue

예제

요소와 그 순서 번호를 곱한 값이 적어도 하나는 20 이상인지 확인해 봅시다:

javascriptlet 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);

코드 실행 결과:

javascripttrue

예제

필요한 경우 세 번째 매개변수에 배열 자체를 전달할 수 있습니다:

javascriptlet check = arr.some(function(elem, index, arr) {
  여기에서 배열 arr을 사용할 수 있습니다
});

함께 보기

  • 배열 확인을 수행할 수 있는 메서드 every,
  • 배열의 각 요소에 함수를 적용할 수 있는 메서드 map와 forEach,
  • 배열을 단일 값으로 축소하는 메서드 reduce와 reduceRight,