더북(TheBook)

코드가 많이 짧아졌죠? 한 부분씩 살펴봅시다. 먼저 Array(5)로 길이 5인 배열을 생성하고, fill(1)로 요소를 모두 1로 채워 넣습니다. 그러면 [1, 1, 1, 1, 1]인데, 어떻게 [1, 2, 3, 4, 5]로 변환된 것일까요?

map() 메서드에서 콜백 함수의 반환값은 i + 1입니다. 즉, 배열의 요소를 하나씩 i + 1의 값으로 바꾸라는 의미입니다. 여기서 i는 콜백 함수의 두 번째 매개변수인 요소의 인덱스입니다. forEach()의 매개변수와 동일하죠. 따라서 인덱스에 1을 더한 값으로 바꾸라는 뜻입니다. 그래서 [1, 2, 3, 4, 5]가 됩니다.

그림 2-35 map( ) 메서드의 작동 방식

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.