如何将拆分存储的单个JSON对象合并为JSON数组?
嘿,这个需求其实挺普遍的,根据你使用的工具或者编程语言不同,有好几种简单直接的方法可以把拆分后的单个JSON对象重新合并成数组。我给你列几个最常用的场景:
1. JavaScript/Node.js 环境
如果是在前端或者Node.js里处理,分两种情况:
情况A:单个JSON是字符串形式
如果你手里的是字符串格式的JSON对象,先把它们解析成JS对象,再放进数组,最后转成JSON数组字符串就行:
// 假设你拿到的是两个JSON字符串 const jsonStr1 = '{"senderDeviceId":0, "recipientDeviceId":0, "gmtTimestamp":0, "type":0}'; const jsonStr2 = '{"senderDeviceId":0, "recipientDeviceId":0, "gmtTimestamp":0, "type":4}'; // 解析→放入数组→转成JSON数组 const mergedJsonArray = JSON.stringify([JSON.parse(jsonStr1), JSON.parse(jsonStr2)]); console.log(mergedJsonArray);
情况B:已经是JS对象了
如果这些单个JSON已经是JavaScript对象(比如你直接在代码里定义的),那就更简单,直接把它们放进数组再序列化:
const obj1 = {"senderDeviceId":0, "recipientDeviceId":0, "gmtTimestamp":0, "type":0}; const obj2 = {"senderDeviceId":0, "recipientDeviceId":0, "gmtTimestamp":0, "type":4}; const mergedJsonArray = JSON.stringify([obj1, obj2]);
2. Python 环境
Python里处理也类似,借助json模块就行:
情况A:单个JSON是字符串
import json # 示例JSON字符串 json_str1 = '{"senderDeviceId":0, "recipientDeviceId":0, "gmtTimestamp":0, "type":0}' json_str2 = '{"senderDeviceId":0, "recipientDeviceId":0, "gmtTimestamp":0, "type":4}' # 解析为字典→放入列表→转成JSON数组字符串 obj1 = json.loads(json_str1) obj2 = json.loads(json_str2) merged_array = json.dumps([obj1, obj2]) print(merged_array)
情况B:已经是Python字典
如果已经是字典对象,直接打包成列表再序列化:
import json obj1 = {"senderDeviceId":0, "recipientDeviceId":0, "gmtTimestamp":0, "type":0} obj2 = {"senderDeviceId":0, "recipientDeviceId":0, "gmtTimestamp":0, "type":4} merged_array = json.dumps([obj1, obj2])
3. 命令行用jq工具(批量处理文件场景)
如果你是把单个JSON存在不同文件里(比如file1.json、file2.json),用jq工具可以快速合并:
# 直接输出合并后的JSON数组到控制台 jq -s '.' file1.json file2.json # 保存到新文件 jq -s '.' file1.json file2.json > merged_result.json
这里的-s(--slurp)选项会把所有输入的JSON对象合并成一个数组。
4. 手动合并(文本编辑场景)
如果只是少量单个JSON,直接手动编辑文本就行:
把每个JSON对象用逗号分隔,然后整体包裹在方括号[]里,比如:
[ {"senderDeviceId":0, "recipientDeviceId":0, "gmtTimestamp":0, "type":0}, {"senderDeviceId":0, "recipientDeviceId":0, "gmtTimestamp":0, "type":4} ]
注意最后一个对象后面不要加逗号,避免部分JSON解析器报错。
内容的提问来源于stack exchange,提问作者RedCollarPanda
相关产品推荐
相关产品推荐

