indexOf (Lodash 호환성)
Array.prototype.indexOf나 Array.prototype.findIndex를 사용하세요
이 indexOf 함수는 NaN 처리를 위한 추가 로직으로 인해 느리게 동작해요.
NaN을 찾지 않는다면 더 빠른 Array.prototype.indexOf를, NaN을 포함해서 찾으려면 Array.prototype.findIndex와 Number.isNaN을 사용하세요.
배열에서 주어진 요소가 첫 번째로 일치하는 인덱스를 찾아요.
typescript
const index = indexOf(array, searchElement, fromIndex);레퍼런스
indexOf(array, searchElement, fromIndex?)
Array.prototype.indexOf와 거의 같게 동작하는데요, NaN 값을 찾을 수 있어요. 배열에서 특정 값의 위치를 알아야 할 때 사용하세요.
typescript
import { indexOf } from 'es-toolkit/compat';
// 숫자 배열에서 요소 찾기
const array = [1, 2, 3, 4];
indexOf(array, 3); // => 2
// NaN 값 찾기 (Array.prototype.indexOf는 찾지 못해요)
const arrayWithNaN = [1, 2, NaN, 4];
indexOf(arrayWithNaN, NaN); // => 2특정 인덱스부터 검색을 시작할 수 있어요.
typescript
import { indexOf } from 'es-toolkit/compat';
const array = [1, 2, 3, 1, 2, 3];
indexOf(array, 2, 2); // => 4 (인덱스 2부터 검색 시작)null이나 undefined는 빈 배열로 처리해요.
typescript
import { indexOf } from 'es-toolkit/compat';
indexOf(null, 1); // => -1
indexOf(undefined, 1); // => -1파라미터
array(T[]): 검색할 배열.
array는 ArrayLike<T>이거나 null 또는 undefined일 수 있어요
lodash와 완전히 호환되도록 indexOf 함수는 array를 다음과 같이 처리해요.
array가ArrayLike<T>인 경우, 배열로 변환하기 위해Array.from(...)을 사용해요.array가null또는undefined인 경우, 빈 배열로 간주돼요.
searchElement(T): 찾을 값이에요.fromIndex(number, 선택): 검색을 시작할 인덱스예요. 음수를 사용하면 배열 끝에서부터 계산해요. 기본값은0이에요.
반환 값
(number): 배열에서 주어진 값과 첫 번째로 일치하는 요소의 인덱스를 반환해요. 일치하는 요소를 찾을 수 없으면 -1을 반환해요.

