compare-objects

0.0.4 • Public • Published

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
*/

Readme

Keywords

none

Package Sidebar

Install

npm i compare-objects

Weekly Downloads

8

Version

0.0.4

License

ISC

Last publish

Collaborators

  • pakastin