자바스크립트 배열 forEach, filter, map 설명

2023. 1. 10. 15:11·개발/JavaScript

자바스크립트 배열에서는 내장 메소드를 사용하여 복잡한 반복 작업을 편리하게 처리할 수 있습니다. 이번 포스팅에서는 대표적인 메소드인 forEach, filter, map의 특징과 사용 방법에 대해 알아보도록 하겠습니다.

  • forEach: 배열 요소를 하나씩 돌며 작업을 수행하며 리턴 값은 없음
  • filter: 조건에 맞는 요소만 필터링하여 새로운 배열로 리턴
  • map: 배열 요소를 하나씩 돌며 작업을 수행하고 새로운 배열로 리턴

forEach

forEach는 각 배열 요소를 하나씩 돌며 작업을 수행할 때 사용합니다. 별도의 리턴 값은 없습니다. 다음과 같이 각 배열 요소를 console.log()로 찍어볼 수 있습니다.

const fruits = ["banana", "apple", "orange"];

function showFruits(fruit){
    console.log(fruit) // "banana", "apple", "orange"
}

fruits.forEach(showFruits)

이름에서 알 수 있는 것처럼 각 요소에 대해(for each) 작업을 수행하는 배열 메소드입니다.

filter

filter는 배열 요소를 특정 조건에 맞게 필터링하고 새로운 배열을 리턴하는 메소드입니다. 아래의 코드는 banana를 제외하고 다른 과일들을 담은 배열을 리턴하는 코드입니다.

const fruits = ["banana", "apple", "orange"];

function excludeFruit(fruit){
    return fruit !== "banana" // ["apple", "orange"]
}

fruits.filter(excludeFruit);

이는 다음과 같이 화살표 함수로도 작성할 수 있습니다. 결과는 위와 동일합니다.

const fruits = ["banana", "apple", "orange"];

fruits.filter((fruit) => fruit !== "banana"); // ["apple", "orange"]

map

map은 배열 요소에 특정 작업을 진행하고 해당 결괏값을 새로운 배열로 리턴하는 데 사용합니다. map 메소드는 각 요소를 함수의 연산과 매핑해줍니다.

const numbers = [1, 2, 3, 4];

const doubleNumbers = numbers.map(number => number * 2); 
console.log(doubleNumbers); // [2, 4, 6, 8]

'개발 > JavaScript' 카테고리의 다른 글

[JavaScript] 비구조적 할당 사용 방법과 이유  (0) 2023.01.13
자바스크립트 배열 요소 랜덤 선택하기  (0) 2023.01.05
자바스크립트 디데이 계산하기  (0) 2023.01.04
'개발/JavaScript' 카테고리의 다른 글
  • [JavaScript] 조건부 삼항 연산자 사용 방법
  • [JavaScript] 비구조적 할당 사용 방법과 이유
  • 자바스크립트 배열 요소 랜덤 선택하기
  • 자바스크립트 디데이 계산하기
휘Hwi
휘Hwi
여행, 사진, 개발, 책 이야기를 기록하는 여행자 휘의 블로그 𓂍
Klook.com
  • 휘Hwi
    휘: 끝나지 않은 이야기
    휘Hwi
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 기록
        • 일상 에세이
        • 인사이트
        • 투자와 재테크
        • 코인 이야기
        • 아카이빙
        • 집무실 레터
        • 사랑에 대하여
        • 번역 이야기(完)
        • 프리랜서 일지(完)
      • 여행
        • 🌎 세계 여행기 S1 (完)
        • 🌊 삼삼한 여행기 (完)
        • 🚶 온더로드
        • 🇯🇵 일본
        • 🏝️ 발리
        • 🇻🇳 베트남
        • 🇱🇰 스리랑카
        • 🇮🇳 인도
        • 🇹🇭 태국
        • 🇸🇬 싱가포르
        • 🇦🇺 호주
        • 🇭🇰 홍콩
        • 🇰🇷 한국
        • 🍚 여행자의 한 끼
        • ℹ️ 여행 정보
      • 사진
        • 사진가
        • 사진 이론과 생각
        • 사진 관련 정보
      • 영상
        • 파이널컷 모션 공부
        • 고프로 GoPro
        • 영상 관련 정보
      • 책
        • 책 읽고 쓰기
      • 개발
        • 티스토리
        • Internet
        • HTML
        • CSS
        • JavaScript
        • Typescript
        • React
        • Node.js
        • Express
        • NestJS
        • Python
        • Django
        • MySQL
        • MongoDB
        • AWS
        • Deployment
        • Terminal
        • Git
        • Glossaries
        • Articles
        • Projects
        • TIL;
      • 미분류
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
휘Hwi
자바스크립트 배열 forEach, filter, map 설명
상단으로

티스토리툴바