FE/JavaScript

📖 [JS] 배열 탐색 메서드

serin99 2024. 7. 19. 23:51
728x90

 

 

배열 메서드 중 순회(Iteration)와 탐색(Search)에 관련된 메서드는 배열의 요소를 반복적으로 처리하거나 특정 조건을 만족하는 요소를 찾는 데 사용됩니다.

 


 

// 1. forEach
// 모든 요소를 순회하면서, 각각의 요소에 특정 동작을 수행시키는 메서드

let arr1 = [1, 2, 3];
// 배열의 요소의 갯수만큼 호출이 됨. 현재의 경우는 총 3회
arr1.forEach(function (item, idx, arr) {
    console.log(idx, item * 2); >> 0 2 / 1 4 / 2 6
};

let doubleArr = [];

arr1.forEach((item) => {
    doubledArr.push(item * 2);
});

// 2. includes
// 배열에 특정 요소가 있는지 확인하는 메서드

let arr2 = [1, 2, 3];
let isInclude = arr2.includes(3);


// 3. indexOf
// 특정 요소의 인덱스(위치)를 찾아서 반환하는 메서드

let arr3 = [1, 2, 3];
let index = arr3.indexOf(2); >> 1

let objectArr = [
	{name: "kim"},
    {name: "serin"},
];

// 원시 타입을 값을 찾을 경우 index of
console.log(
 objectArr.indexOf({name: "kim"})
);

// 복잡한 객체 타입의 값을 찾을 땐 find index
console.log(
 objectArr.findIndex(
  (item) => item.name === "serin"
 )
);


// 4. findIndex
// 모든 요소를 순회하면서, 콜백함수를 만족하는 특정 요소의 인덱스(위치)를 반환하는 메서드

let arr4 = [1, 2, 3];
const findedIndex = arr4.findIndex((item) => {
  if (item === 2) return true;
})


// 5. find
// 모든 요소를 순회하면서 콜백함수를 만족하는 요소를 찾는데, 요소를 그대로 반환

let arr5 = [
 {name: "kim"},
 {name: "serin"},
];

const finded = arr5.find((item) => item.name === "kim");
728x90