compare-objects
Compare Objects
installation
npm install compare-objects --save
usage
var compare = require('compare-objects')
var objA = {
a: 1,
b: 2,
c: {
d: 3
},
g: 6
}
var objB = {
a: 1,
b: 3,
c: {
e: 4
}
f: 5
}
compare(objA, objB, function (key, value, oldValue) {
var newDefined = value !== undefined
var oldDefined = oldValue !== undefined
if (newDefined && oldDefined) {
if (value === oldValue) {
console.log('unchanged', key, value, oldValue)
} else {
console.log('update', key, value, oldValue)
}
return
}
if (newDefined) {
console.log('added', key, value)
return
}
if (oldDefined) {
console.log('removed', key, oldValue)
}
})
/*
Prints:
unchanged, a, 1, 1
update, b, 3, 2
update, c, {e: 4}, {d: 3}
added, f, 5
removed, g, 6
*/