如何将JSON对象转换为原对象存于下标0的指定格式数组
实现方案
前置说明
你给出的目标示例[0:{...}]不属于标准JSON语法,标准JSON数组无需显式标注下标,将原对象作为数组第一个元素即可,标准合法转换结果如下:
[ { "vendorName": "RAKESH KUMAR", "vendorContact": "8876545678", "vendorPAN": "ATMPB6657F", "vendorBankDetails": [ { "vendorAccount": "3456787654", "vendorBankCode": "AXIS123", "vendorBankName": "AXIS BANK" } ], "createdAt": "2021-09-01 00:18:10" } ]
如果确实需要输出[0:{...}]格式的非标准字符串,可以参考下方各语言的实现逻辑。
各语言实现示例
JavaScript实现
- 标准合法JSON转换
// 源对象 const sourceObj = { "vendorName": "RAKESH KUMAR", "vendorContact": "8876545678", "vendorPAN": "ATMPB6657F", "vendorBankDetails": [ { "vendorAccount": "3456787654", "vendorBankCode": "AXIS123", "vendorBankName": "AXIS BANK" } ], "createdAt": "2021-09-01 00:18:10" }; // 转换为标准数组 const targetArr = [sourceObj]; // 输出标准JSON字符串 console.log(JSON.stringify(targetArr, null, 4));
- 非标准
[0:{...}]格式输出
const nonStandardStr = `[0:${JSON.stringify(sourceObj, null, 4)}]`; console.log(nonStandardStr);
Python实现
- 标准合法JSON转换
import json # 源对象 source_obj = { "vendorName": "RAKESH KUMAR", "vendorContact": "8876545678", "vendorPAN": "ATMPB6657F", "vendorBankDetails": [ { "vendorAccount": "3456787654", "vendorBankCode": "AXIS123", "vendorBankName": "AXIS BANK" } ], "createdAt": "2021-09-01 00:18:10" } # 转换为标准数组 target_arr = [source_obj] # 输出标准JSON字符串 print(json.dumps(target_arr, indent=4, ensure_ascii=False))
- 非标准
[0:{...}]格式输出
non_standard_str = f"[0:{json.dumps(source_obj, indent=4, ensure_ascii=False)}]" print(non_standard_str)
内容的提问来源于stack exchange,提问作者Dinesh Beura
相关产品推荐
相关产品推荐

