>웹 프론트엔드 >JS 튜토리얼 >`reduce()` 메서드를 사용하여 키별로 JavaScript 개체를 그룹화하려면 어떻게 해야 합니까?

`reduce()` 메서드를 사용하여 키별로 JavaScript 개체를 그룹화하려면 어떻게 해야 합니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-21 02:32:09777검색

How Can I Group JavaScript Objects by Key Using the `reduce()` Method?

JavaScript를 사용하여 키별로 개체 그룹화

특정 키로 개체 배열을 그룹화하는 것은 프로그래밍에서 일반적인 작업이며, 특히 작업할 때 더욱 그렇습니다. 데이터 세트. 이를 달성하는 효율적인 방법 중 하나는 Reduce() 메서드를 사용하는 것입니다.

JavaScript에서는 다음 단계를 수행할 수 있습니다.

  1. 객체 배열 선언: 예제에 제공된 예와 유사한 자동차 개체 배열이 있다고 가정해 보겠습니다. 질문:
const cars = [
    { make: 'audi', model: 'r8', year: '2012' },
    { make: 'audi', model: 'rs5', year: '2013' },
    { make: 'ford', model: 'mustang', year: '2012' },
    { make: 'ford', model: 'fusion', year: '2015' },
    { make: 'kia', model: 'optima', year: '2012' },
];
  1. 객체를 누산기로 초기화: Reduce() 메서드에 대한 누산기 역할을 할 빈 객체를 만듭니다. 이 객체는 그룹화된 값을 저장합니다.
const groupedCars = {};
  1. reduce()를 사용하여 배열을 반복합니다. cars 배열에 Reduce() 메서드를 사용하여 각 객체를 반복합니다. Reduce() 함수는 두 개의 인수를 사용합니다.
  • accumulator: 2단계에서 생성된 객체.
  • currentElement: 현재 반복 중인 객체 over.
  1. accumulator에 객체 추가: Reduce() 메서드 내에서 현재 make 속성이 accumulator 객체의 속성으로 존재하는지 확인합니다. 존재하지 않는 경우 해당 속성에 새 배열을 만듭니다. 그런 다음 currentElement를 생성된 배열에 푸시합니다. 이 프로세스는 제조사에 따라 객체를 효과적으로 그룹화합니다.
const groupedCars = cars.reduce((accumulator, currentElement) => {
  const make = currentElement.make;

  if (!accumulator[make]) {
    accumulator[make] = [];
  }

  accumulator[make].push(currentElement);

  return accumulator;
}, {});
  1. 그룹화된 객체를 반환합니다. Reduce() 메소드는 그룹화된 객체를 포함하는 누적된 객체를 반환합니다. 값.
  2. 그룹화된 결과 기록: 그룹화된 개체를 콘솔에 기록하여 다음을 수행할 수 있습니다. 출력을 확인하세요.
console.log(groupedCars);

이 접근 방식은 바닐라 JavaScript를 사용하고 지정된 키를 기반으로 개체를 그룹화하는 구조화된 방법을 제공하여 그룹화된 값으로 새 개체를 생성합니다.

위 내용은 `reduce()` 메서드를 사용하여 키별로 JavaScript 개체를 그룹화하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.