如何将JSON文件中的字符串数组转换为对象数组?
将JSON字符串数组转换为对象数组的最优方法
输入JSON格式
[ "city", "river", "car" ]
目标输出格式
[ { word: "city", something: "..." }, { word: "river", something: "..." }, { word: "car", something: "..." } ]
注:如果需要标准JSON输出,对象的键名需要用双引号包裹
按语言的最优实现方法
JavaScript/Node.js
利用数组原生的map方法,一次遍历完成转换,代码简洁高效,时间复杂度为O(n):
const fs = require('fs'); // 读取并解析JSON文件 const rawData = fs.readFileSync('input.json', 'utf8'); const wordsArray = JSON.parse(rawData); // 转换为目标对象数组 const resultArray = wordsArray.map(word => ({ word: word, something: "..." // 可替换为自定义逻辑 })); // 写入结果到JSON文件 fs.writeFileSync('output.json', JSON.stringify(resultArray, null, 2));
Python
使用Pythonic的列表推导式,执行效率高且语法直观,时间复杂度为O(n):
import json # 读取JSON文件 with open('input.json', 'r', encoding='utf-8') as f: words_array = json.load(f) # 转换为字典列表 result_array = [{'word': word, 'something': '...'} for word in words_array] # 写入结果到JSON文件 with open('output.json', 'w', encoding='utf-8') as f: json.dump(result_array, f, indent=2, ensure_ascii=False)
如果something字段需要根据每个word生成动态值,只需将示例中的"..."替换为对应的计算逻辑即可,比如调用接口、查询数据库或执行字符串处理操作。
内容的提问来源于stack exchange,提问作者Byron Vargas Hernandez
相关产品推荐
相关产品推荐

