> 웹 프론트엔드 > JS 튜토리얼 > 공통 속성을 기반으로 배열의 개체를 그룹화하려면 어떻게 해야 합니까?

공통 속성을 기반으로 배열의 개체를 그룹화하려면 어떻게 해야 합니까?

DDD
풀어 주다: 2024-12-23 00:35:26
원래의
910명이 탐색했습니다.

How Can I Group Objects in an Array Based on a Common Property?

공통 속성으로 개체 그룹화

문제:

각 개체에 " 그룹" 속성입니다. 이 배열을 유사한 "그룹" 속성 값이 함께 그룹화되는 새 배열로 변환하려고 합니다.

원하는 출력:

myArray = [
  {group: "one", color: ["red", "green", "black"]},
  {group: "two", color: ["blue"]}
]
로그인 후 복사

해결책:

  1. 비어 있는 그룹 이름 매핑 만들기 배열:
var group_to_values = {};
로그인 후 복사
  1. 입력 배열 반복:
myArray.forEach(function (item) {
    group_to_values[item.group] = group_to_values[item.group] || [];
});
로그인 후 복사
  1. 매핑의 각 키에 대해 그룹 이름 및 배열 값:
var groups = [];
for (var key in group_to_values) {
    groups.push({group: key, color: group_to_values[key]})
}
로그인 후 복사
  1. 결과 그룹 배열은 "그룹" 속성으로 그룹화됩니다.

위 내용은 공통 속성을 기반으로 배열의 개체를 그룹화하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿