各位置にオブジェクトを保持する新旧の 2 つの配列があります。デルタを同期または検索する方法 (つまり、古いアレイと比較して、新しいアレイから新しいもの、更新されたもの、および削除されたもの)
var o = [
{id:1, title:"title 1", type:"foo"},
{id:2, title:"title 2", type:"foo"},
{id:3, title:"title 3", type:"foo"}
];
var n = [
{id:1, title:"title 1", type:"foo"},
{id:2, title:"title updated", type:"foo"},
{id:4, title:"title 4", type:"foo"}
];
上記のデータでは、id をキーとして使用すると、id=2 のアイテムのタイトルが更新され、id=3 のアイテムが削除され、id=4 のアイテムが新規であることがわかります。
便利な機能を備えた既存のライブラリがありますか、それともループと内部ループの場合ですか、各行を比較してください..
for(var i=0, l=o.length; i<l; i++)
{
for(var x=0, ln=n.length; x<ln; x++)
{
//compare when o[i].id == n[x].id
}
}
この種の比較を 3 回行って、新規、更新済み、および削除済みを見つけますか?