JavaScript判断两个json是不是相同的
原理
暴力的递归遍历对比,遇到不相等就
return false
code:
let jsonObjA = {
"Name": "MyName",
"Company": "MyCompany",
"Infos": [{
"Age": "100"
}, {
"Box": [{
"Height": "100"
}, {
"Weight": "200"
}]
}],
"Address": "undefined"
};
let jsonObjB = {
"Name": "MyName",
"Company": "MyCompany",
"Infos": [{
"Age": "100"
}, {
"Box": [{
"Height": "100"
}, {
"Weight": "200"
}]
}],
"Address": "undefined"
};
function compreObj(obj1, obj2) {
var flag = true;
function compre(obj1, obj2) {
if (Object.keys(obj1).length != Object.keys(obj2).length) {
flag = false;
} else {
for (let x in obj1) {
if (obj2.hasOwnProperty(x)) {
if (obj1[x] !== obj2[x]) {
compre(obj1[x], obj2[x]);
}
} else {
flag = false;
}
}
}
if (flag === false) {
return false;
} else {
return true;
}
}
return compre(obj1, obj2)
}
console.log(compreObj(jsonObjA, jsonObjB));
本文介绍了一种使用JavaScript来判断两个JSON对象是否完全相同的方法。通过递归遍历和对比两个对象的所有属性,确保它们在结构和值上完全一致。这种方法适用于需要精确匹配复杂JSON结构的场景。
1738

被折叠的 条评论
为什么被折叠?



