> 웹 프론트엔드 > JS 튜토리얼 > 두 JavaScript 개체 배열 간의 차이점을 효율적으로 찾을 수 있는 방법은 무엇입니까?

두 JavaScript 개체 배열 간의 차이점을 효율적으로 찾을 수 있는 방법은 무엇입니까?

Linda Hamilton
풀어 주다: 2024-12-13 14:35:10
원래의
964명이 탐색했습니다.

How Can I Efficiently Find the Differences Between Two JavaScript Arrays of Objects?

JavaScript에서 배열 차이점 검색

두 개의 객체 배열이 주어지면 차이점을 식별하는 것이 바람직합니다. 이와 관련하여 다음 코드 조각은 솔루션을 제공합니다.

const a = [{ value: "0", display: "Jamsheer" }, { value: "1", display: "Muhammed" }, { value: "2", display: "Ravi" }, { value: "3", display: "Ajmal" }, { value: "4", display: "Ryan" }];
const b = [{ value: "0", display: "Jamsheer" }, { value: "1", display: "Muhammed" }, { value: "2", display: "Ravi" }, { value: "3", display: "Ajmal" }];

// Equality comparison function
const isSameUser = (a, b) => a.value === b.value && a.display === b.display;

// Filter function to identify unique elements in the left array (a)
const onlyInLeft = (left, right, compareFunction) =>
  left.filter(leftValue =>
    !right.some(rightValue =>
      compareFunction(leftValue, rightValue)
    )
  );

// Apply the filter functions
const onlyInA = onlyInLeft(a, b, isSameUser);
const onlyInB = onlyInLeft(b, a, isSameUser);

// Concatenate the unique elements from both arrays
const result = [...onlyInA, ...onlyInB];

console.log(result);
로그인 후 복사

이 코드는 제공된 비교 함수(isSameUser)를 사용하여 객체 배열을 효과적으로 비교하고 각 배열의 고유 요소를 식별합니다. 최종 결과는 두 입력 배열의 고유한 요소를 포함하는 배열입니다.

위 내용은 두 JavaScript 개체 배열 간의 차이점을 효율적으로 찾을 수 있는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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