map 은 배열 안의 각 원소를 변환 할 때 사용 되며, 이 과정에서 새로운 배열이 만들어집니다.
예를 들어서 다음과 같은 배열이 있다고 가정해봅시다.
constarray= [1,2,3,4,5,6,7,8];
만약에 배열 안의 모든 숫자를 제곱해서 새로운 배열을 만들고 싶다면 어떻게 해야 할까요?
map 함수를 사용하지 않고 우리가 지금까지 배운 지식들을 활용하면 다음과 같이 구현 할 수 있습니다.
// ❌ Bad Codeconstarray= [1,2,3,4,5,6,7,8];// *1번 방법*constsquared= [];for (let i =0; i <array.length; i++) {squared.push(array[i] * array[i]);}// *2번 방법* 1번 방법보다 더 깔끔하게 작성이 가능하다.constsquared= [];array.forEach(n => {squared.push(n * n);});// *3번 방법* 2번 방법보다 더 깔끔하게 작성이 가능하다.constsquare= n => n * n;constsquared=array.map(square);console.log(squared);