JavaScript의 배열(Array) 메서드

JavaScript는 배열을 조작하기 위한 다양한 내장 메서드를 제공합니다. 이 중에서도 map, filter, reduce는 매우 유용하며, 자주 사용되는 메서드입니다. 각각의 메서드에 대해 설명하겠습니다.

1. map 메서드

map 메서드는 배열의 각 요소에 대해 주어진 함수를 호출한 결과를 모아 새로운 배열을 반환합니다. 원래 배열은 변하지 않습니다.

사용법

javascript코드 복사const numbers = [1, 2, 3, 4];
const doubled = numbers.map((number) => number * 2);
console.log(doubled); // [2, 4, 6, 8]

설명

  • map 메서드는 원본 배열을 변경하지 않습니다.
  • 각 요소에 대해 제공된 함수가 호출되며, 그 결과가 새로운 배열에 저장됩니다.

2. filter 메서드

filter 메서드는 주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열을 생성합니다. 테스트를 통과하지 못한 요소는 제외됩니다.

사용법

javascript코드 복사const numbers = [1, 2, 3, 4];
const evenNumbers = numbers.filter((number) => number % 2 === 0);
console.log(evenNumbers); // [2, 4]

설명

  • filter 메서드는 원본 배열을 변경하지 않습니다.
  • 각 요소에 대해 제공된 함수가 호출되며, true를 반환하는 요소들만 새로운 배열에 저장됩니다.

3. reduce 메서드

reduce 메서드는 배열의 각 요소에 대해 주어진 리듀서 함수를 실행하고, 하나의 결과값을 반환합니다. 초기값을 제공할 수 있으며, 제공하지 않으면 배열의 첫 번째 요소가 초기값이 됩니다.

사용법

javascript코드 복사const numbers = [1, 2, 3, 4];
const sum = numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0);
console.log(sum); // 10

설명

  • reduce 메서드는 원본 배열을 변경하지 않습니다.
  • 리듀서 함수는 네 개의 인수를 가질 수 있습니다: 누산기(accumulator), 현재 값(currentValue), 현재 인덱스(currentIndex), 원본 배열(array).

4. 기타 배열 메서드

forEach

각 배열 요소에 대해 한 번씩 제공된 함수를 실행합니다. 반환값이 없습니다.

사용법

javascript코드 복사const numbers = [1, 2, 3, 4];
numbers.forEach((number) => console.log(number));

find

주어진 테스트를 만족하는 첫 번째 요소를 반환합니다. 없다면 undefined를 반환합니다.

사용법

javascript코드 복사const numbers = [1, 2, 3, 4];
const found = numbers.find((number) => number > 2);
console.log(found); // 3

some

배열의 어떤 요소가 주어진 테스트를 통과하는지 확인합니다. 하나라도 통과하면 true를 반환합니다.

사용법

javascript코드 복사const numbers = [1, 2, 3, 4];
const hasEvenNumber = numbers.some((number) => number % 2 === 0);
console.log(hasEvenNumber); // true

every

배열의 모든 요소가 주어진 테스트를 통과하는지 확인합니다. 모두 통과하면 true를 반환합니다.

사용법

javascript코드 복사const numbers = [2, 4, 6, 8];
const allEvenNumbers = numbers.every((number) => number % 2 === 0);
console.log(allEvenNumbers); // true

concat

두 개 이상의 배열을 결합하여 새로운 배열을 반환합니다.

사용법

javascript코드 복사const array1 = [1, 2, 3];
const array2 = [4, 5, 6];
const combined = array1.concat(array2);
console.log(combined); // [1, 2, 3, 4, 5, 6]

slice

배열의 일부분을 추출하여 새로운 배열을 반환합니다.

사용법

javascript코드 복사const numbers = [1, 2, 3, 4, 5];
const sliced = numbers.slice(1, 3);
console.log(sliced); // [2, 3]

splice

배열의 내용을 제거, 교체 또는 추가하여 원본 배열을 변경합니다.

사용법

javascript코드 복사const numbers = [1, 2, 3, 4, 5];
numbers.splice(2, 1, 10);
console.log(numbers); // [1, 2, 10, 4, 5]

결론

JavaScript의 배열 메서드는 배열을 효율적으로 조작할 수 있는 다양한 기능을 제공합니다. map, filter, reduce를 포함한 여러 메서드를 잘 활용하면 코드의 가독성과 효율성을 크게 높일 수 있습니다. 다양한 메서드를 이해하고 필요에 맞게 사용하는 것이 중요합니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다