问题描述:Javascript比较两个JSON数组并返回不匹配值的键。
答案:在Javascript中,我们可以通过以下步骤比较两个JSON数组并返回不匹配值的键:
下面是一个示例代码:
function compareJSONArrays(array1, array2) {
var mismatchKeys = [];
array1.forEach(function(obj1) {
var match = array2.find(function(obj2) {
return obj2.key === obj1.key;
});
if (match && match.value !== obj1.value) {
mismatchKeys.push(obj1.key);
}
});
return mismatchKeys;
}
// 示例用法
var array1 = [
{ key: "name", value: "John" },
{ key: "age", value: 25 },
{ key: "city", value: "New York" }
];
var array2 = [
{ key: "name", value: "John" },
{ key: "age", value: 30 },
{ key: "city", value: "London" }
];
var result = compareJSONArrays(array1, array2);
console.log(result); // 输出:["age", "city"]
在这个示例中,我们比较了两个JSON数组array1和array2。其中array1包含了{name: "John", age: 25, city: "New York"},array2包含了{name: "John", age: 30, city: "London"}。根据比较结果,不匹配的键是"age"和"city",它们的值分别是25和"New York"。所以,最终的输出结果是["age", "city"]。
推荐的腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云