나의 개발일지

Js 기초 5 - map, filter, indexOf 본문

Language/Javascript

Js 기초 5 - map, filter, indexOf

사각분무기 2024. 1. 27. 11:38

map

  • 자바스크립트의 map은
    • 키와 값을 저장하는 컬렉션의 역할 뿐 아니라 (객체와는 별개)
      • 연산자의 역할도 한다
  • map을 활용하면
    • 배열 안의 값들을 함수를 호출하거나
    • 아래와 같이 함수를 정의할 수 있다.
  • 함수를 활용한 후의 결과값은 새로운 배열에 담을 수 있다.
const arr = [1, 3, 5, 7, 9];

const resultArr = arr.map((el) => el * el);

console.log("arr 배열 안의 숫자들이 모두 제곱된 버전의 새로운 배열은 : " + resultArr);

// 출력값
"arr 배열 안의 숫자들이 모두 제곱된 버전의 새로운 배열은 : 1,9,25,49,81"

 

filter

  • 배열 내의 값들을 함수 호출을 통해
    • 원하는 특정 조건에 맞는 값들만 따로 골라낼 수 있다
const arr = [1, 4, 7, 10];

const resultArr = arr.filter((item) => item % 2 == 0)

console.log("arr 배열안의 숫자 중 해당 조건에 만족하는것들만 따로 골라낸다면 결과는 : " + resultArr);

// 출력값
"arr 배열안의 숫자 중 해당 조건에 만족하는것들만 따로 골라낸다면 결과는 : 4,10"

 

indexOf

  • 배열 내의 값들 중 특정한 값의 위치를 반환해준다
    • 값이 두개 이상일 경우 가장 앞에 위치한 (인댁스값이 작은) 값의 위치를 알려준다
    • 해당 값이 배열 내에 존재하지 않을 경우
      • -1 을 반환
const arr = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 60, 70];

const index = arr.indexOf(60);

console.log(`가장 앞에있는 \`60\`의 위치는 ${index} 입니다.`);

// 출력값
가장 앞에있는 `60`의 위치는 5 입니다.