(Javascript) findIndex()와 indexOf()의 차이점

공통점

JavaScript에서 findIndex() 및 indexOf()는 둘 다 배열에서 특정 값을 찾기 위한 메서드입니다.

그러나 둘 사이에는 몇 가지 중요한 차이점이 있습니다.

차이점

비교 방법의 차이

findIndex(): 배열의 각 요소에 대해 콜백 함수를 실행하고, 콜백 함수의 반환 값이 true인 첫 번째 요소의 인덱스를 반환합니다. 즉, 사용자 정의 비교 논리를 콜백 함수에 적용할 수 있습니다.
indexOf(): 엄격한(===) 비교를 통해 주어진 값과 배열의 요소를 찾는다. 값 유형과 값이 모두 일치하고 인덱스를 반환하는 요소를 찾습니다.

사용 환경의 차이

findIndex(): ECMAScript 2015(ES6)에서 도입된 방식으로 브라우저 및 일부 환경에서 지원하지 않을 수 있습니다. 이 경우 polyfill을 사용하여 지원할 수 있습니다.
indexOf(): 이 방식은 ES5부터 도입되었으며 대부분의 브라우저와 환경에서 지원됩니다.

결론

따라서, findIndex()보다 유연한 비교 논리를 적용할 수 있으며 ES6 이후 환경에서 사용할 수 있습니다.

반대편에 indexOf()단순 값 검색에 적합하며 ES5 이상의 환경에서 지원됩니다.