자바스크립트 배열 메서드(find, findIndex 등)

자바스크립트는 많은 배열 메서드를 제공하여 배열을 조작하고 검색하는 기능을 제공합니다. 그 중에서 findfindIndex는 특히 유용한 메서드입니다. 이들 메서드는 배열에서 특정 조건을 만족하는 첫 번째 요소를 찾거나 해당 요소의 인덱스를 반환합니다.

1. find 메서드

find 메서드는 주어진 조건을 만족하는 첫 번째 요소를 반환합니다.

const numbers = [1, 2, 3, 4, 5];
const evenNumber = numbers.find(num => num % 2 === 0);

console.log(evenNumber); // 2

위의 예제에서는 numbers 배열에서 첫 번째로 발견되는 짝수를 찾기 위해 find 메서드를 사용했습니다. 배열의 모든 요소에 대해 주어진 조건을 검사하고, 조건을 만족하는 첫 번째 요소를 반환합니다. 이 경우 2는 주어진 조건(num % 2 === 0)을 만족하는 첫 번째 짝수입니다.

2. findIndex 메서드

findIndex 메서드는 주어진 조건을 만족하는 첫 번째 요소의 인덱스를 반환합니다.

const fruits = ["apple", "banana", "orange", "mango"];
const indexOfOrange = fruits.findIndex(fruit => fruit === "orange");

console.log(indexOfOrange); // 2

위의 예제에서는 fruits 배열에서 “orange”를 찾기 위해 findIndex 메서드를 사용했습니다. 배열의 모든 요소에 대해 주어진 조건을 검사하고, 조건을 만족하는 첫 번째 요소의 인덱스를 반환합니다. 이 경우 “orange”는 주어진 조건(fruit === "orange")을 만족하는 첫 번째 과일이므로 인덱스 2를 반환합니다.

3. findfindIndex의 활용

findfindIndex 메서드는 주어진 조건에 따라 배열을 검색하고, 해당하는 요소나 인덱스를 반환하기 때문에 다양한 상황에서 활용할 수 있습니다. 예를 들어, 사용자가 입력한 키워드를 포함하는 첫 번째 항목을 찾는 기능을 구현할 수 있습니다.

const items = [
  { id: 1, name: "apple" },
  { id: 2, name: "banana" },
  { id: 3, name: "orange" },
  { id: 4, name: "mango" }
];

const keyword = "banana";
const item = items.find(item => item.name.includes(keyword));

console.log(item); // { id: 2, name: "banana" }

위의 예제에서는 items 배열에서 name 속성에 "banana"를 포함하는 첫 번째 항목을 찾기 위해 find 메서드를 사용했습니다. 조건을 만족하는 첫 번째 항목은 { id: 2, name: "banana" }이므로 해당 객체를 반환합니다.

findfindIndex 메서드는 배열을 좀 더 효율적으로 탐색하고 원하는 정보를 얻을 수 있는 강력한 도구입니다. 다양한 문제를 해결하기 위해 적절하게 활용해보세요!