如何将带索引的扁平 JSON 数据转换为嵌套 JSON 对象列表?
您提到的 json 具有以下格式:
{ "family[0].familyname": "第一个", "family[0].sex": "1", "family[1].familyname": "第二个", "family[1].sex": "1", }
要将其转换为嵌套 json 对象的列表,您需要执行以下步骤:
- 将 json 解析为 key-value 对:
const keyvaluepairs = object.entries(json);
- 创建一个数组来存储转换后的对象:
const result = [];
for (const [key, value] of keyvaluepairs) { const [, index] = key.match(/family[(d+)]/); result[index] = result[index] || { familyname: '', sex: '' }; result[index][key.split('.').pop()] = value; }
- 返回转换后的列表:
return result;
最终得到的转换后的 json 列表将如下所示:
[ { "FamilyName": "第一个", "Sex": "1" }, { "FamilyName": "第二个", "Sex": "1" } ]