私は同じ長さとオブジェクトを含む2つのJavaScript配列orig
(オブジェクトの元の配列)とupdate
(更新されたオブジェクト配列)を持ち、オブジェクトの各ペアの違いを出力したいと思います。オブジェクトの2つのJavaScript配列の違いを見つけるにはどうすればよいですか?
例:
var orig = [{enabled:"true", name:"Obj1", id:3},{enabled:"true", name:"Obj2", id:4}];
var update = [{enabled:"true", name:"Obj1", id:3}, {enabled:"true", name:"Obj2-updated", id:4}];
出力は次のようになります。name:"Obj2-updated"
私は何かを実装しますが、それは、最適化を必要とする...
for(var prop=0; prop<orig.length; prop++) {
for(prop=0; prop<update.length; prop++) {
if(orig[prop].enabled != update.enabled) { console.log(update.enabled) }
if(orig[prop].name != update[prop].name) { console.log(update[prop].name) }
if(orig[prop].id != update[prop].id) { console.log(update[prop].id) }
}
}
出力は文字列かオブジェクトですか?オブジェクトや文字列を含む配列、または? –
私はあなたのユースケースを知らないが、変更された値のリストしか持たないことは、どのキーとどのオブジェクトに値が変更されたかを知らなくても役に立ちません。あなたはもっと詳細が必要ないと確信していますか?私はあなたの質問に腹を立てようとしているわけではありませんが、変更された値だけを必要とすることについて間違っている場合は、次の質問が何かを予期しようとしています。 –
"Hey、Obj2をObj2に変更しました"という文字列のテキストを作成するには、その出力が必要です。しかし、私が必要とするのは、どのプロパティが変更されたのかを知ることだけです。 – Valip