[JavaScript] findIndex()

GXXN_YX·2023년 2월 23일
0
post-thumbnail

📖 관련 공식 문서

📌 1. Array.prototype.findIndex()

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

  • findIndex()는 호출되는 배열을 변경하지 않는다.

  • 원하는 요소를 찾자마자 메서드를 종료한다.(뒤쪽 요소는 관심조차 주지 않는다.)

const array1 = [5, 12, 8, 130, 44];
const isLargeNumber1 = (el) => el > 13;
const isLargeNumber2 = (el) => el > 130;

console.log(array1.findIndex(isLargeNumber1));
// output: 3
console.log(array1.findIndex(isLargeNumber2));
// output: -1

💡 구문

arr.findIndex(callback(element, index, array)[, thisArg])

매개변수

  • callback(필수): 아래 3개의 인수(element, index, array)를 취하여 배열의 각 값에 대해 실행할 함수이다.
    👉 위 코드에서 callback 함수는 'isLargeNumber1, isLargeNumber2'

    • element(필수): 배열에서 처리중인 현재 요소이다.
    • index(옵션): 배열에서 처리중인 현재 요소의 인덱스이다.
    • array(옵션): findIndex 함수가 호출된 배열이다.
  • thisArg(옵션): 선택 사항. 콜백을 실행할 때 this로 사용할 객체이다.




📌 2. Array.prototype.find()

  • find() 메서드는 주어진 판별 함수를 만족하는 첫 번째 요소 값을 반환한다. 만족하는 요소가 없으면 undefined을 반환한다.

  • find()는 호출되는 배열을 변경하지 않는다.

  • 원하는 요소를 찾자마자 메서드를 종료한다.


💡 구문

    arr.find(callback, thisArg)

매개변수

  • callback(필수): 아래 3개의 인수(element, index, array)를 취하여 배열의 각 값에 대해 실행할 함수이다.

    • element(필수): 콜백함수에서 처리중인 현재 요소이다.
    • index(옵션): 콜백함수에서 처리중인 현재 요소의 인덱스이다.
    • array(옵션): find 함수가 호출된 배열이다.
  • thisArg(옵션): 선택 사항. 콜백을 실행할 때 this로 사용할 객체이다.




📌 3. find()와 findIndex()의 차이점

  • find(): 첫 번째 요소 값을 반환
  • findIndex(): 첫 번째 요소 값의 인덱스를 반환

사실상 find(), findIndex()는 거의 동일하고 요소 값을 반환하는지 인덱스를 반환하는지의 차이만 있다.

0개의 댓글