map() 부터 살펴보자면
const arr = [1,2,3];
const squares = arr.map(function(x){
return x*x;
});
console.log(squares); // [1,4,9]
: map()에서 배열을 루프하는데, 콜백함수에서 수정한 값으로 매(each)요소를 수정 후 수정된 값으로 다시 배열로 생성한다.
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
forEach()의 경우
map()과 마찬가지로 배열의 모든 요소들을 순회하면서 요소 각각에 대하여 콜백함수에 인자로 전달되어 반복 호출하는 배열 메서드이다.
map 과의 큰 차이는 새로운 배열을 return(반환) 하지 않는다는 점입니다.
let startWithNames = [];
let names = ['a', 'ab', 'cbb', 'ada'];
names.forEach(el => {
if (el.startsWith('a')) {
startWithNames.push(el);
}
});
값을 얻으려면 콜백함수에서 수정된 값을 받을 빈 배열을 포함한 변수를 생성하여 넣어야한다.