如何从两个JSON对象提取公共字段并构建第三个JSON对象
提取两个JSON对象的共有字段并构建新对象
需求说明:从request2中提取与request1共有的字段,以此构建目标JSON对象,且每次request1和request2的字段可能存在差异。
示例输入
{ "request1": { "MId": "1006995", "id": "1001", "MaskedFlg": true }, "request2": { "MaskedFlg": false, "id": "1002", "MId": "", "AccType": "Desi" } }
期望输出
{ "MaskedFlg": false, "id": "1002", "MId": "" }
实现思路与代码示例(JavaScript)
核心逻辑是先获取request1的所有字段名,再筛选出request2中存在的同名字段,将对应键值对整合到新对象中:
const input = { "request1": { "MId": "1006995", "id": "1001", "MaskedFlg": true }, "request2": { "MaskedFlg": false, "id": "1002", "MId": "", "AccType": "Desi" } }; // 获取request1的所有字段名 const request1Keys = Object.keys(input.request1); const targetObj = {}; // 遍历字段,提取request2中存在的共有字段 request1Keys.forEach(key => { if (input.request2.hasOwnProperty(key)) { targetObj[key] = input.request2[key]; } }); // 输出结果 console.log(JSON.stringify(targetObj, null, 2));
这个方案完全适配字段动态变化的场景,无论request1和request2的字段如何增减,都能准确提取两者的共有字段并构建目标对象。
内容的提问来源于stack exchange,提问作者Madhavi kurabalakota
相关产品推荐
相关产品推荐

