Javascript : 배열메서드 (순회와 탐색)

kimsnmyng·2024년 12월 8일

Vanilla Javascript

목록 보기
17/23

// 배열 메서드 2. 순회와 탐색

// 5가지 요소 순회 및 탐색 메서드

// 1. forEach
// 모든 요소를 순회하면서, 각각의 요소에 특정 동작을 수행시키는 메서드
let arr1 = [1, 2, 3];

arr1.forEach(function (item, idx, arr) {
  console.log(idx, item * 2); // 0 2, 1 4, 2 6
});

let doubledArr = [];

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

console.log(doubledArr); // [2, 4, 6]

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

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

console.log(isInclude); // true

// 3. indexOf (단순한 배열을 찾을 때)
// 특정 요소의 인덱스(위치)를 찾아서 반환하는 메서드
let arr3 = [2, 2, 2];
let index = arr3.indexOf(2); // 이 경우 가장 먼저 찾아낸 인덱스의 값을 반환함, 존재하지 않으면 -1
console.log(index);

// 4. findIndex (복잡한 객체를 찾을 때)
// 특정 요소의 인덱스(위치)를 반환하는 메서드
// 모든 요소를 순회하면서, 콜백함수를 만족하는 값을 반환
// 객체 타입에서 indexOf는 찾지 못한다. 그래서 findIndex가 필요한 것이다. (얕은 비교로만 진행하기 때문에.)

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

console.log(findedIndex); // 0 , 조건에 맞지 않는다면 -1

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

let arr5 = [
  {name:'김선명'},
  {name:'카리나'},
]

const finded = arr5.find((item) => item.name === "카리나");
console.log(finded) // name: "카리나"
profile
안녕하세요 김선명입니다.

0개의 댓글