You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在数组对象及嵌套的company对象中添加指定键值对?

问题描述

我有如下JSON响应数据:

[
  {
    "userId": 1,
    "id": 3,
    "title": "fugiat veniam minus",
    "company": {
      "name": "Deckow-Crist",
      "catchPhrase": "Proactive didactic contingency",
      "bs": "synergize scalable supply-chains"
    }
  },
  {
    "userId": 2,
    "id": 4,
    "title": "fugiat veniam minus",
    "company": {
      "name": "Deckow-Crist",
      "catchPhrase": "Proactive didactic contingency",
      "bs": "synergize scalable supply-chains"
    }
  }
]

需要在两个位置添加键值对"completed": false:一是数组中的每个顶级对象,二是每个顶级对象内的company对象中,最终得到目标结构的JSON数据。


实现方案

方案1:JavaScript实现

直接遍历数组内的每个对象,为目标层级添加属性即可:

// 假设原始JSON已解析为数组data
const data = [
  {
    "userId": 1,
    "id": 3,
    "title": "fugiat veniam minus",
    "company": {
      "name": "Deckow-Crist",
      "catchPhrase": "Proactive didactic contingency",
      "bs": "synergize scalable supply-chains"
    }
  },
  {
    "userId": 2,
    "id": 4,
    "title": "fugiat veniam minus",
    "company": {
      "name": "Deckow-Crist",
      "catchPhrase": "Proactive didactic contingency",
      "bs": "synergize scalable supply-chains"
    }
  }
];

// 遍历处理每个对象
data.forEach(item => {
  item.completed = false; // 给顶级对象加属性
  item.company.completed = false; // 给company对象加属性
});

// 输出格式化后的JSON
console.log(JSON.stringify(data, null, 2));

方案2:Python实现

通过JSON解析与遍历字典的方式完成属性添加:

import json

# 原始JSON字符串
raw_json = '''
[
  {
    "userId": 1,
    "id": 3,
    "title": "fugiat veniam minus",
    "company": {
      "name": "Deckow-Crist",
      "catchPhrase": "Proactive didactic contingency",
      "bs": "synergize scalable supply-chains"
    }
  },
  {
    "userId": 2,
    "id": 4,
    "title": "fugiat veniam minus",
    "company": {
      "name": "Deckow-Crist",
      "catchPhrase": "Proactive didactic contingency",
      "bs": "synergize scalable supply-chains"
    }
  }
]
'''

# 解析JSON为Python列表
data = json.loads(raw_json)

# 遍历处理每个字典
for item in data:
    item['completed'] = False
    item['company']['completed'] = False

# 输出格式化后的JSON字符串
print(json.dumps(data, indent=2))

内容的提问来源于stack exchange,提问作者vivek chaudhary

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 00:06:17