>웹 프론트엔드 >JS 튜토리얼 >두 JavaScript 개체 배열 간의 차이점을 효율적으로 찾으려면 어떻게 해야 합니까?

두 JavaScript 개체 배열 간의 차이점을 효율적으로 찾으려면 어떻게 해야 합니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-09 10:04:08892검색

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

JavaScript에서 두 객체 배열의 차이점 찾기

JavaScript에서는 두 객체 배열의 차이점을 확인해야 할 수도 있습니다. . 예를 들어, 하나에만 존재하고 다른 하나에는 존재하지 않는 개체를 비교하고 식별하려는 두 개의 결과 집합이 있을 수 있습니다.

이를 달성하려면 기본 JS 기능과 사용자 정의 기능의 조합을 활용할 수 있습니다. 비교 기능. 수행 방법은 다음과 같습니다.

  1. 비교 함수 정의:

    const isSameUser = (a, b) => a.value === b.value && a.display === b.display;

이 함수는 다음을 결정합니다. 두 객체는 ​​'값'과 '표시'에 따라 동일합니다.

  1. 'onlyInLeft' 함수 사용:

    const onlyInLeft = (left, right, compareFunction) => 
      left.filter(leftValue =>
     !right.some(rightValue => 
       compareFunction(leftValue, rightValue)));

이 함수는 세 가지 인수를 사용합니다. 배열, 오른쪽 배열 및 비교 기능. 정의된 비교 함수를 기반으로 오른쪽 배열에 해당 요소가 없는 왼쪽 배열의 요소를 필터링합니다.

  1. 차이점을 찾으려면 'onlyInLeft' 함수를 사용하세요. :

    const onlyInA = onlyInLeft(a, b, isSameUser);
    const onlyInB = onlyInLeft(b, a, isSameUser);

이 코드는 'onlyInLeft' 기능을 적용합니다. 비교 기능을 사용하여 두 어레이의 차이점을 확인합니다.

  1. 최종 결과 생성:

    const result = [...onlyInA, ...onlyInB];

마지막으로 'result' 배열에는 한 배열에는 있지만 다른 배열에는 없는 객체가 포함됩니다.

위 내용은 두 JavaScript 개체 배열 간의 차이점을 효율적으로 찾으려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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