比较 2 个 JSON 并在更新 json 时更改键值
Comparing 2 jsons and changing key values while updating the jsons
有 2 个 JSON我添加了 JSON 代码
var json1 = [
{
"name": "padd",
"value": "1",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": true,
"showRecord": true
},
{
"name": "padd",
"value": "2",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": true,
"showRecord": true
},
{
"name": "padd",
"value": "3",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": true,
"showRecord": true
},
{
"name": "padd",
"value": "4",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": true,
"showRecord": true
},
{
"name": "padd",
"value": "5",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": true,
"showRecord": true
},
{
"name": "padd",
"value": "Unknown",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": true,
"showRecord": true
}
];
json2=[
{
"name": "padd",
"value": "1",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": false,
"showRecord": true
},
{
"name": "padd",
"value": "2",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": false,
"showRecord": true
},
{
"name": "padd",
"value": "3",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": false,
"showRecord": true
},
{
"name": "padd",
"value": "4",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": false,
"showRecord": true
},
{
"name": "padd",
"value": "5",
"parentName": "",
"parentValue": "",
"children": [],
"canDisplay": true,
"showRecord": true
},
{
"name": "padd",
"value": "Unknown",
"parentName": "",
"parentValue": "",
"children": [
{
"name": "terminal_state",
"value": "00",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": false,
"showRecord": true,
"$$hashKey": "object:31491"
},
{
"name": "terminal_state",
"value": "AL",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": false,
"showRecord": true,
"$$hashKey": "object:31492"
},
{
"name": "terminal_state",
"value": "AR",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": false,
"showRecord": true,
"$$hashKey": "object:31493"
},
{
"name": "terminal_state",
"value": "AZ",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31494"
},
{
"name": "terminal_state",
"value": "CA",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31495"
},
{
"name": "terminal_state",
"value": "CO",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31496"
},
{
"name": "terminal_state",
"value": "CT",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31497"
},
{
"name": "terminal_state",
"value": "FL",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31498"
},
{
"name": "terminal_state",
"value": "GA",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31499"
},
{
"name": "terminal_state",
"value": "IA",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31500"
},
{
"name": "terminal_state",
"value": "ID",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31501"
},
{
"name": "terminal_state",
"value": "IL",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31502"
},
{
"name": "terminal_state",
"value": "IN",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31503"
},
{
"name": "terminal_state",
"value": "KS",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31504"
},
{
"name": "terminal_state",
"value": "KY",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31505"
},
{
"name": "terminal_state",
"value": "LA",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31506"
},
{
"name": "terminal_state",
"value": "MA",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31507"
},
{
"name": "terminal_state",
"value": "MD",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31508"
},
{
"name": "terminal_state",
"value": "MI",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31509"
},
{
"name": "terminal_state",
"value": "MN",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31510"
},
{
"name": "terminal_state",
"value": "MO",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31511"
},
{
"name": "terminal_state",
"value": "MS",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31512"
},
{
"name": "terminal_state",
"value": "MT",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31513"
},
{
"name": "terminal_state",
"value": "NC",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31514"
},
{
"name": "terminal_state",
"value": "ND",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31515"
},
{
"name": "terminal_state",
"value": "NE",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31516"
},
{
"name": "terminal_state",
"value": "NJ",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31517"
},
{
"name": "terminal_state",
"value": "NM",
"parentName": "padd",
"parentValue": "Unknown",
"children": [
{
"name": "terminal_city",
"value": "Albuquerque",
"parentName": "terminal_state",
"parentValue": "NM",
"children": [
{
"name": "enterminalname",
"value": "NM Albuquerque - Nustar - 4253",
"parentName": "terminal_city",
"parentValue": "Albuquerque",
"children": [],
"canDisplay": false,
"showRecord": true,
"$$hashKey": "object:31716"
},
{
"name": "enterminalname",
"value": "NM Albuquerque - P66 - 4254",
"parentName": "terminal_city",
"parentValue": "Albuquerque",
"children": [],
"canDisplay": false,
"showRecord": true,
"$$hashKey": "object:31717"
},
{
"name": "enterminalname",
"value": "NM Albuquerque - Vecenergy - 4251",
"parentName": "terminal_city",
"parentValue": "Albuquerque",
"children": [],
"canDisplay": false,
"showRecord": true,
"$$hashKey": "object:31718"
}
],
"canDisplay": false,
"showRecord": true,
"$$hashKey": "object:31711"
}
],
"canDisplay": false,
"showRecord": true,
"$$hashKey": "object:31518"
},
{
"name": "terminal_state",
"value": "NV",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31519"
},
{
"name": "terminal_state",
"value": "NY",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31520"
},
{
"name": "terminal_state",
"value": "OH",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31521"
},
{
"name": "terminal_state",
"value": "OK",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31522"
},
{
"name": "terminal_state",
"value": "OR",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31523"
},
{
"name": "terminal_state",
"value": "PA",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31524"
},
{
"name": "terminal_state",
"value": "RI",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31525"
},
{
"name": "terminal_state",
"value": "SC",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31526"
},
{
"name": "terminal_state",
"value": "SD",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31527"
},
{
"name": "terminal_state",
"value": "TN",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31528"
},
{
"name": "terminal_state",
"value": "TX",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31529"
},
{
"name": "terminal_state",
"value": "UT",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31530"
},
{
"name": "terminal_state",
"value": "VA",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31531"
},
{
"name": "terminal_state",
"value": "WA",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31532"
},
{
"name": "terminal_state",
"value": "WI",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31533"
},
{
"name": "terminal_state",
"value": "WY",
"parentName": "padd",
"parentValue": "Unknown",
"children": [],
"canDisplay": true,
"showRecord": true,
"$$hashKey": "object:31534"
}
],
"canDisplay": true,
"showRecord": true
}
]
问题是我无法遍历 JSON 并推送 json1 中不匹配的键.我想比较 json1 和 json2,而 json1 中缺少的那些键应该使用 json2 中的键进行更新,我还想在从 json2 复制到 json1 时更新密钥candisplay
。 请帮忙 我是JavaScript的新手,我没有编程知识
var L = json1.length;
var L1 = json2.length;
for (var i = 0; i < L; i++) {
var obj = json1[i];
for (var j in obj) {
for (var x = 0; x < L1; x++) {
var obj1 = json2[x];
for (var k in obj1) {
if (i == x && j == k) {
if (obj[j] == obj1[k]) {
continue;
}
else
{
json1[i][j] = json2[x][k];
}
}
}
}
}
}
for(i in json1){
var obj2=json1[i]
for( j in obj2)
if(json1[i][j]===false)
json1[i][j]=true
}
是我尝试遍历上述给定 JSON 并添加缺失值的代码
相关文章:
- 将JSON对象的表示形式更改为显式键/值格式
- 从 JSON 获取键值对而不使用 .(DOT) 在 Java 脚本或 jquery 中
- 比较 2 个 JSON 并在更新 json 时更改键值
- 在Javascript中读取没有键值的JSON
- 从JSON中检索键值
- 如何为json键和值提供工具提示消息
- JSON.Stringify replacer函数无法获取键值
- 将CSV转换为JSON键值
- jQuery 循环 .each() JSON 键/值不起作用
- 更新 JSON 键值 - AngularJS
- 将 JSON 键值对追加到 .json 文件 Titanium
- 使用Typeahead.js和JSON键值更新隐藏的输入字段
- 使用postgres将行减少为json键/值对
- 将多维JSON键值对转换为Angular菜单(不需要Angular知识)
- 使用jquery动态访问JSON键值
- 需要帮助通过json键值对循环
- 在高图中显示该系列中json键值对的总数
- 在javascript中解析json键/值数据到基于节点的数据
- 访问JSON键/值
- 不循环地访问JSON键值