just-the-diff

0.1.1 • Public • Published

objectDiff Build Status

Usage

objectDiff will get the extra and different properties of the first object

ex.

objectDiff(
  {
    steel: {
      sword: {
        weight: 20
      }
    }
  },
  {
    steel: {
      train: {
        contains: "coal"
      }
    }
  });

yields

  {
    steel: {
      sword: {
        weight: 20
      }
    }
  }

because all the stuff in a is not in b (this diff shows extra or different, only for the first object). You can get the same for the second object by reversing the order in your call

if two objects are are the same, objectDiff yields undefined

ex.

  objectDiff({}, {}) === undefined //true

more examples.

  objectDiff(
  {
    steel: {
      sword:{
        weight: 10
      },
      train: {
        hasCoal: true
      }
    }
  },
  {
    steel: {
      sword: {
        weight: 10
      }
    }
  });

yields

{
  steel: {
    train: {
      hasCoal: true
    }
  }
}

because the first object is only different in the path steel.train.hasCoal

Warning

make sure you run tests with data that resembles your application

There are things that may not be implemented. Circular structures come to mind as they have not been tested.

Developing

get the dependencies

yarn

lint

yarn run lint

test

yarn run test
yarn run test -- --watch

Readme

Keywords

none

Package Sidebar

Install

npm i just-the-diff

Weekly Downloads

0

Version

0.1.1

License

none

Last publish

Collaborators

  • noah-kun