javascript JavaScript中的JSON字符串比较

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript JavaScript中的JSON字符串比较相关的知识,希望对你有一定的参考价值。

var jsonStringA = '{"ID": 1,"Number": 3,"Boolean": true}';
var jsonStringB = '{"ID": 1,"Number": 5,"Boolean": false}';

var compareJson = function (a, b) {
    if (a == null || a == '') {
        'ITEM WAS ADDED'
        return;
    }

    if (b == null || b == '') {
        'ITEM WAS DELETED'
        return;
    }

    var aObj = JSON.parse(a);
    var bObj = JSON.parse(b);

    var output = [];

    for (var propA in aObj) {
        var existsInB = false;
        var valA = aObj[propA];
        for (var propB in bObj) {
            if (propA === propB) {
                existsInB = true;
                var valB = bObj[propB];

                if (valA !== valB) {
                    output.push({
                        Property: propA,
                        OldValue: valA,
                        NewValue: valB
                    });
                }
            }
        }
    }

    return output;
};

var result = compareJson(jsonStringA, jsonStringB);

以上是关于javascript JavaScript中的JSON字符串比较的主要内容,如果未能解决你的问题,请参考以下文章

Next.js / JSX 中的 JavaScript 函数语法?

手写 asm.js - 你如何跟踪堆中的 javascript 对象?

JavaScript学习目录

检测代码中的 node.js/javascript 内存泄漏

Node.js 中的管道/流式处理 JavaScript 对象

图说js中的this——深入理解javascript中this指针