JavaScript map vs forEach — 뭐가 다르고 언제 쓸까

map과 forEach는 둘 다 배열을 순회하지만 용도가 다르다. map은 새 배열을 반환하고, forEach는 부수 효과 실행이 목적이다. async와 함께 쓸 때 forEach가 조용히 실패하는 이유와 map + Promise. all 패턴을 코드로 정리했다.