JavaScript比较和返回对象之间的差异

时间:2014-02-25 20:02:06

标签: javascript node.js

民间,   给定以下2个对象,比较它们的最佳方法是什么,只返回它们之间的差异?

{ _id: 530797d8952e10129f97fde3,
  Product: 'something',
  Realm: [ 'something', 'something','foo' ],
  Service: 'Node',
  Owners: [ 'foo', 'something' ],
  Project: 'something',
  URLs:
    [ { 'foo': [Object] },
      { 'foo': [Object] },
      { 'foo': [Object] } ] }

...

{ _id: 530797d8952e10129f97fde3,
  Product: 'something',
  Realm: [ 'something', 'something','foo' ],
  Service: 'Node',
  Owners: [ 'foo', 'something' ],
  Project: 'something',
  URLs:
    [ { 'bar': [Object] },
      { 'foo': [Object] },
      { 'quux': [Object] } ] }

我应该循环使用这些并进行比较,还是人们使用预先构建的模块?

谢谢!

1 个答案:

答案 0 :(得分:1)

flitbit编写了一个非常棒的node.js模块,可以完全按照您的意愿执行:deep-diff

我不会详细介绍它(模块页面写得很好),但它会计算两个对象之间的差异,并给出一个描述它的详细输出。输出包括属性是新的/已删除还是仅具有不同的值。

相关问题