> 웹 프론트엔드 > JS 튜토리얼 > ES6를 사용하여 ID별로 JavaScript 개체를 효율적으로 병합하려면 어떻게 해야 합니까?

ES6를 사용하여 ID별로 JavaScript 개체를 효율적으로 병합하려면 어떻게 해야 합니까?

Patricia Arquette
풀어 주다: 2024-12-12 14:55:14
원래의
747명이 탐색했습니다.

How Can I Efficiently Merge JavaScript Objects by ID Using ES6?

ID를 기준으로 JavaScript 개체 병합: 종합 가이드

식별자(id)를 기준으로 개체를 병합하는 것은 JavaScript 프로그래밍에서 일반적인 작업입니다. 특히 서로 다른 소스의 데이터를 결합할 때. 이 가이드는 간결한 ES6 구문을 사용하여 효율적인 솔루션을 제시합니다.

해결책:

id 필드를 기반으로 두 객체 배열을 병합하려면 다음을 사용할 수 있습니다. 접근 방식:

const a3 = a1.map((t1) => ({
  ...t1,
  ...a2.find((t2) => t2.id === t1.id),
}));
로그인 후 복사

설명:

  • map() 메서드는 첫 번째 배열(a1)을 반복합니다.
  • 각 배열에 대해 a1의 객체 t1, 확산 연산자(...)를 사용하여 새 객체를 생성합니다.
  • 두 번째 배열(a2)에서 find()를 사용하여 t1과 일치하는 ID를 가진 객체를 검색합니다.
  • 그런 다음 발견된 객체의 속성은 다음을 사용하여 새 객체에 복사됩니다. 스프레드 연산자.

예 사용법:

질문에 제공된 예시 배열을 고려하세요.

var a1 = [{ id: 1, name: "test"}, { id: 2, name: "test2"}];
var a2 = [{ id: 1, count: "1"}, {id: 2, count: "2"}];
로그인 후 복사

위 솔루션을 적용하면 원하는 병합이 생성됩니다. 배열:

var a3 = [{ id: 1, name: "test", count: "1"}, 
          { id: 2, name: "test2", count: "2"}];
로그인 후 복사

장점:

  • 간결하고 읽기 쉬운 코드.
  • 객체 병합을 위해 ES6 스프레드 연산자를 효율적으로 사용합니다.
  • 병합된 속성의 기존 속성과 누락된 속성을 모두 처리합니다. 개체.

위 내용은 ES6를 사용하여 ID별로 JavaScript 개체를 효율적으로 병합하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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