Programming
map vs forEach
seoca
2022. 8. 15. 17:13
map vs forEach
map은 새로운 array를 리턴하고 forEach는 original array를 수정하여 리턴한다.
-> 즉 기존 array를 남기는 map()을 사용하는 것이 함수형프로그래밍에 더 적합하다.
forEach자체는 original array를 return하지만 callback function이 변화를 일으킨다.
Example code.
let arr = [1,2,3];
const arrMap = arr.map(x => x*2);
console.log("arr", arr) //arr [ 1, 2, 3 ]
console.log("arrMap", arrMap); //arrMap [ 2, 4, 6 ]
arr.forEach((x, index) => arr[index] = x * 3);
console.log("arr", arr); //arr [ 3, 6, 9 ]
아래와 같이 forEach를 variable 에 assign하려면 error가 발생한다.
왜냐면 forEach는 iterate 을 위한것이다. read-only.
const arrForEach = arr.forEach((x, index) => arr[index] = x * 3);
console.log("arrForEach", arrForEach); //undefined. forEach는 assign을 할수없음.