はじめに
この実験では、JavaScript の matches 関数を使って 2 つのオブジェクトを比較し、それらが同等のプロパティ値を持っているかどうかを判断する方法を探ります。この関数は、ユーザー入力の検証や異なるソースからのデータの比較など、2 つのオブジェクトが同じプロパティと値を持っているかどうかを確認する必要があるシナリオで役立ちます。この実験が終わるとき、matches 関数の使い方とそれがコーディングタスクをどのように簡素化できるかをより深く理解するようになります。
JavaScript でオブジェクトのプロパティを比較する方法
2 つのオブジェクトを比較し、同じプロパティ値を持っているかどうかを確認するには、matches 関数を使います。使い方は以下の通りです。
- ターミナル/SSH を開き、コーディングを始めるために
nodeと入力します。 matches関数のコードをコピーして、JavaScript ファイルに貼り付けます。- 関数を呼び出し、2 つのオブジェクトを引数として渡します。最初のオブジェクトは比較したいオブジェクトで、2 番目のオブジェクトはそれと比較したいオブジェクトです。
matches({ age: 25, hair: "long", beard: true }, { hair: "long", beard: true });
// true
matches({ hair: "long", beard: true }, { age: 25, hair: "long", beard: true });
// false
matches 関数は、Object.keys() を使って 2 番目のオブジェクトのすべてのキーを取得し、その後、Array.prototype.every()、Object.prototype.hasOwnProperty() および厳密な比較を使って、最初のオブジェクトにすべてのキーが存在し、同じ値を持っているかどうかを確認します。
まとめ
おめでとうございます!あなたはオブジェクトのプロパティを一致させる実験を完了しました。あなたの技術を向上させるために、LabEx でさらに多くの実験を行って練習することができます。