Getting a diff of two json-objects

前端 未结 5 2019
执笔经年
执笔经年 2020-11-29 05:01

Scenario: I want a function that compares two JSON-objects, and returns a JSON-object with a list of the differences and if possible more data such as coverage metrics.

5条回答
  •  迷失自我
    2020-11-29 05:29

    You can use rus-diff https://github.com/mirek/node-rus-diff which creates MongoDB compatible (rename/unset/set) diff:

    // npm install rus-diff
    var madrid = {"type":"team","description":"Good","trophies":[{"ucl":"10"}, {"copa":"5"}]};
    var barca = {"type":"team","description":"Bad","trophies":[{"ucl":"3"}]};
    var rusDiff = require('rus-diff').rusDiff
    console.log(rusDiff(madrid, barca))
    

    Outputs:

    { '$unset': { 'trophies.1': true },
      '$set': { description: 'Bad', 'trophies.0.ucl': '3' } }
    

提交回复
热议问题