본문 바로가기
Language/JavaScript

[JavaScript] arr.findIndex() - 조건에 맞는 배열의 특정 값 위치(index) 찾기 (Array.prototype.findIndex())

by 썸머워즈 2021. 2. 7.
반응형

배열에서 특정 값의 위치(인덱스)를 찾아주는 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

 

Array.prototype.findIndex() - JavaScript | MDN

findIndex() 메서드는 주어진 판별 함수를 만족하는 배열의 첫 번째 요소에 대한 인덱스를 반환합니다. 만족하는 요소가 없으면 -1을 반환합니다.

developer.mozilla.org

 

반응형


댓글

TOP