KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have two arrays, old and new, which hold objects at each position. How would I sync or find the delta (i.e. what is new, updated and deleted from the new array compared to the old array) 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"} ]; With the above data, using id as the key, we'd find that item with id=2 has an updated title, item with id=3 is deleted, and item with id=4 is new. Is there an existing library out there that has useful functions, or is it a case of loop and inner loop, compare each row..e.g. 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 } } Do this kind of comparison three times, to find new, updated and deleted?
Tags (comma-separated)
Save Edits
Cancel