[javascript] 배열 순회 시 요소간 연산하기

자바스크립트에서 배열을 다룰 때 종종 배열의 요소들 간에 연산을 해야 할 때가 있습니다. 이번 블로그 포스트에서는 자바스크립트의 배열 순회 방법 중 하나인 forEach 메소드를 사용하여 배열 요소들 간의 연산 방법에 대해 알아보겠습니다.

forEach 메소드를 사용한 배열 순회

forEach 메소드는 배열의 요소를 하나씩 순회하면서 지정한 콜백 함수를 실행하는 메소드입니다. 이를 통해 배열 순회 과정에서 요소들간의 연산을 할 수 있습니다.

const numbers = [1, 2, 3, 4, 5];
let sum = 0;

numbers.forEach((number) => {
  sum += number;
});

console.log(sum); // 15

위 예시에서는 numbers 배열을 순회하면서 각 요소를 sum 변수에 더해주는 연산을 수행합니다. 따라서 sum 변수의 최종 값은 15가 되게 됩니다.

map 메소드를 사용한 배열 연산

forEach 메소드는 순회 과정에서 요소들 간의 연산을 수행할 수는 있지만, 새로운 배열을 반환하지는 않습니다. 만약 배열 요소들 간의 연산 결과로 새로운 배열을 생성하고자 한다면 map 메소드를 사용할 수 있습니다.

const numbers = [1, 2, 3, 4, 5];
const squaredNumbers = numbers.map((number) => {
  return number * number;
});

console.log(squaredNumbers); // [1, 4, 9, 16, 25]

위 예시에서는 numbers 배열을 순회하면서 각 요소에 대해 제곱 연산을 수행하여 새로운 배열인 squaredNumbers 배열을 생성합니다. 따라서 squaredNumbers 배열에는 numbers 배열의 각 요소를 제곱한 값인 [1, 4, 9, 16, 25]가 저장되게 됩니다.

요소간 연산을 위한 다른 배열 순회 메소드

forEachmap 외에도 배열 순회를 위해 사용할 수 있는 다른 메소드들도 존재합니다. 예를 들어, reduce 메소드를 사용하면 배열 요소들을 하나의 값으로 통합하는 연산을 수행할 수 있습니다.

const numbers = [1, 2, 3, 4, 5];
const sum = numbers.reduce((accumulator, currentValue) => {
  return accumulator + currentValue;
}, 0);

console.log(sum); // 15

위 예시에서는 numbers 배열의 요소들을 모두 더한 결과인 15를 반환하는 연산을 수행합니다. reduce 메소드는 첫 번째 인자로 누산기(accumulator) 역할을 할 변수를, 두 번째 인자로 콜백 함수를 받습니다. 콜백 함수는 누산기와 현재 요소를 인자로 받아 실행되며, 최종적으로 누산기의 최종 값이 반환됩니다.

결론

이번 포스트에서는 자바스크립트에서 배열 순회 시 요소간 연산을 하는 방법에 대해 알아보았습니다. forEach, map, reduce와 같은 배열 순회 메소드를 적절하게 사용하여 요소들 간의 연산을 수행할 수 있습니다. 이러한 기능들을 잘 활용하여 자바스크립트 배열을 유연하게 다룰 수 있습니다.

참고 자료: