photo credit: Rootkit code via photopin (license)
私の愛しいアップルパイへ
あなたの悩み事を当ててみましょう。「文字列や数値の比較はいいとして、配列やオブジェクトを2つ比較して等しいかどうかをJavaScriptで判別したいわ」ってことでしょう。
よろしい、私にはあなたのその質問に答える準備があります。今回はJavaScriptを例に説明しますが、他の言語でも応用できるはずです。
JavaScriptで配列やオブジェクトを比較して等しいかチェックする方法
▼少なくともJavaScriptでは以下のように配列やオブジェクトをそのまま比較するようなことはできません。
array1 == array2
そこで、配列やオブジェクトの中身をjsonに変換してから比較することで、中身が等しいかどうかを簡単にチェックすることができます。
▼それではサンプルコードを見てください。
checkObjDiff: function(object1, object2) { // objectの中身をjson化する var object1String = JSON.stringify(object1); var object2String = JSON.stringify(object2); // json文字列で比較する if (object1String === object2String) { return false; // 等しければfalse } else { return true; // 差分があればtrue } }
上記のコードはJSON.stringifyでオブジェクトの中身を文字列にしてから比較しています。
これで、配列やオブジェクトを2つ比較して等しいかどうかを判別できるってわけです。Cooooool!
貴下の従順なる下僕 松崎より