map vs forEach
map은 변환한 새 배열을 반환하고, forEach는 반환값 없이 순회만 합니다.
둘 다 배열을 순회하지만 목적이 다릅니다. 반환값 유무가 핵심 차이입니다.
| 구분 | map | forEach |
|---|---|---|
| 반환값 | 새 배열 | undefined |
| 용도 | 변환 | 단순 반복(부수 효과) |
| 체이닝 | 가능 | 불가능 |
| 원본 변경 | 안 함 | 안 함 |
map를 쓸 때
각 요소를 변환해 새 배열이 필요할 때 사용합니다.
forEach를 쓸 때
값을 출력하거나 외부 상태를 바꾸는 등 반환값이 필요 없을 때 사용합니다.
결론
결과 배열이 필요하면 map, 단순 반복이면 forEach입니다. map의 반환값을 쓰지 않는다면 forEach가 더 명확합니다.
← 개발 개념 비교 전체 보기