如何通过编程方式为JSON数组中的每个对象添加新字段
解决方案
一、命令行快速实现(推荐大文件使用)
使用轻量JSON处理工具jq,无需写完整代码,一行命令即可完成转换:
- 安装
jq:多数Linux发行版默认预装,macOS可通过brew install jq安装,Windows可直接下载官方二进制文件使用 - 执行命令:
jq 'map(. + {"created_by": "Felix"})' 输入文件名.json > 输出文件名.json
该方案性能极高,处理GB级JSON文件也不会出现内存溢出问题。
二、代码实现
Python版本(跨平台,无额外依赖)
使用Python标准库json即可完成,无需安装第三方包:
import json # 加载原始数据 with open("input.json", "r", encoding="utf-8") as f: json_data = json.load(f) # 批量新增字段 for obj in json_data: obj["created_by"] = "Felix" # 导出结果 with open("output.json", "w", encoding="utf-8") as f: json.dump(json_data, f, indent=2, ensure_ascii=False)
如果不需要格式化输出,去掉indent=2参数可大幅提升写入速度。
Node.js版本
const fs = require('fs') const rawData = fs.readFileSync('input.json', 'utf-8') const jsonData = JSON.parse(rawData) const result = jsonData.map(item => ({ ...item, created_by: 'Felix' })) fs.writeFileSync('output.json', JSON.stringify(result, null, 2), 'utf-8')
三、工具实现
- 本地编辑器:VS Code、Notepad++等常见代码编辑器安装JSON处理插件后,都支持批量添加字段功能,可直接可视化操作
- 在线工具:主流的在线JSON编辑站点均支持批量新增字段功能,上传文件后配置字段名和字段值即可导出,注意敏感数据请勿上传公共在线站点,避免泄露
内容的提问来源于stack exchange,提问作者Starbucks Admin
相关产品推荐
相关产品推荐

