반응형
배열에서 특정 값의 위치(인덱스)를 찾아주는 indexOf 가 존재하는데,
아무래도 상세한 조건에 따라 인덱스를 반환해주는 메서드는 따로 존재한다.
Array.prototype.findIndex() 메서드에 대해 알아보자.
indexOf와 동일하게 조건에 맞으면 배열의 index를 반환하고 만족하는 요소가 없으면 -1을 반환한다.
▷ 구문
arr.findIndex(callback(element[, index[, array]])[, thisArg])
callback : callbackFunction 이며 function 안에서 조건에 따라 값을 반환한다. (만족 여부에 따라 인덱스 or -1)
element : 현재 요소 (ex. 반복문의 현재 요소)
index : 현재 요소의 인덱스
array : findIndex 함수를 사용하는 대상 배열
thisArg : callback을 실행할 때 this로 사용하는 값.
역시 예제를 통해 접근하는게 빠르니 가볍게 접해보자.
▷ 예제1) Array.prototype.findIndex() 기본 사용법
var mine = [1, 2, 3, 4, 5];
var index = mine.findIndex(function(item, index, arr){
return item > 3
})
indexOf와 마찬가지로 조건을 만족하는 첫 번째 요소의 인덱스를 반환한다.
그래서 위 예제에서의 index 값은 3이 나온다. (조건에 맞는 배열값 4에서 멈추기 때문의 배열의 index는 3이다.)
참고 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex
반응형
댓글