JavaScript でのオブジェクトの配列の違いの決定
オブジェクトの 2 つの配列を対比するという概念は、データ セットを比較するときによく発生します。この記事では、2 つの配列間で個別の要素を抽出し、特定のオブジェクトのプロパティを確実に保持する方法について説明します。
次の入力配列を考えてみましょう:
Result 1: [ { value: "0", display: "Jamsheer" }, { value: "1", display: "Muhammed" }, { value: "2", display: "Ravi" }, { value: "3", display: "Ajmal" }, { value: "4", display: "Ryan" } ] Result 2: [ { value: "0", display: "Jamsheer" }, { value: "1", display: "Muhammed" }, { value: "2", display: "Ravi" }, { value: "3", display: "Ajmal" } ]
望ましい結果は、これらの配列の差です。これにより、結果 1:
[ { value: "4", display: "Ryan" } ]
の一意の要素のみを含む配列が生成されます。JavaScript には、これをエレガントに実現できるネイティブ メソッドが用意されています。 タスク。プロパティに基づいてオブジェクトの同等性を評価する比較関数を定義すると、onlyInLeft() 関数を利用して、左側 (元の) 配列にのみ存在する要素を識別できます。これと同じプロセスを右側の (新しい) 配列に適用できます。
const isSameUser = (a, b) => a.value === b.value && a.display === b.display; const onlyInA = onlyInLeft(result1, result2, isSameUser); const onlyInB = onlyInLeft(result2, result1, isSameUser); const result = [...onlyInA, ...onlyInB];
結果変数には、2 つの入力配列間の区別を含む配列が含まれます。このアプローチは、比較のために特定のプロパティを保持しながらオブジェクトの配列を比較する柔軟なソリューションを提供します。
以上が2 つの JavaScript オブジェクト配列の違いを見つける方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。