- 반복문 기능을 지닌 배열 메서드 - 배열의 요소를 순회하며, 모두 순회하면 실행을 멈춤 - 'break;' 사용이 불가 - for문보다 속도가 빠름
- map도 반복문 기능을 가지지만, 반환값이 있다는 점에서 forEach와 다름 - 배열의 요소를 순회하며, 모두 순회하면 실행을 멈춤 - 'break;' 사용이 불가 - 기존 배열의 값이 바뀌는게 아니라 새로운 배열을 만듦
→ 둘의 가장 큰 차이는 Return 값이다. forEach는 기존 Array를 변경하고 Map은 새로운 배열을 반환한다.
sol 3.
그래서 map으로도 코드를 짜봤더니 이렇게도 console이 잘 찍혔다.
최종 코드
let input = require('fs').readFileSync('/dev/stdin').toString().split("\n");
let [N, M] = input[0].split(" ").map(Number);
let A = [];
let B = [];
let array = [];
for(let i = 0 ; i < N ; i++) {
array.push([]);
}
for (let i = 0 ; i < N ; i++) {
A.push(input[i+1].split(" ").map(Number));
B.push(input[i+1+N].split(" ").map(Number));
}
for(let n = 0 ; n < N ; n++) {
for(let m = 0 ; m < M ; m++) {
array[n].push(A[n][m] + B[n][m]);
}
}
const sol = array.map((e) => e.join(" "));
console.log(sol.join("\n"));