如何使用node.js比较两个json数组

时间:2015-04-09 17:40:57

标签: javascript arrays json node.js

json1 = 
[{
        "name": "apple"
},
{
        "name": "mango"
},
{
        "name": "orange"
}]

json2 = [{
        "name": "apple"
},
{
        "name": "mango"
}]

我需要比较两个jsons并找出两个json数组之间的不匹配。预期的结果显然是橙色。请你帮我完成这件事。

2 个答案:

答案 0 :(得分:1)

npm - json-diff

抓取https://www.npmjs.com/package/json-diff

或者,只需查看source code并做他做的任何事情。 - https://github.com/andreyvit/json-diff

答案 1 :(得分:1)

npm上有一些软件包可以执行此操作(https://github.com/NV/objectDiff.js)。

如果效率不是问题,您可以进行扫描,在json1上循环,并且每个元素都可以查看它是否存在于json2中,反之亦然。在这种情况下,由于您只是在寻找这些name KVP,因此您也可以将其标准化为['apple', 'mango', 'orange']['apple', 'mango']并使用indexOf()