issue-78.js 662 B

123456789101112131415161718192021222324
  1. const diff = require('../');
  2. const ptr = require('json-ptr');
  3. const inspect = require('util').inspect;
  4. const objA = { array: [{ a: 1 }] };
  5. const objB = { array: [{ a: 2 }] };
  6. let changes = diff(objA, objB);
  7. if (changes) {
  8. // decorate the changes using json-pointers
  9. for (let i = 0; i < changes.length; ++i) {
  10. let change = changes[i];
  11. // get the parent path:
  12. let pointer = ptr.create(change.path.slice(0, change.path.length - 1));
  13. if (change.kind === 'E') {
  14. change.elementLeft = pointer.get(objA);
  15. change.elementRight = pointer.get(objB);
  16. }
  17. }
  18. }
  19. console.log(inspect(changes, false, 9)); // eslint-disable-line no-console