You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在JavaScript中向JSON对象添加新的用户对象?

问题分析

你现在的代码踩了两个关键坑:

  • 完全没必要把原JSON对象转成数组,你最终要的是键值对形式的对象结构(user1、user2作为key),转数组反而把原本的结构彻底打乱了。
  • 你创建的user是数组,却硬给它加user2属性(数组本质是特殊对象,但这么做完全不符合你的需求),最后把这个不伦不类的数组push到之前转出来的数组里,结果自然变成了数组套数组,和目标格式差得远。
正确实现代码

直接在解析后的原对象上添加新用户属性就行,不用绕数组的弯路:

const fs = require('fs');

// 读取并解析JSON文件为对象
const obj = JSON.parse(fs.readFileSync('./datei.json', 'utf8'));

// 直接给原对象新增user2属性
obj['user2'] = {
  "id": 2,
  "nVote": 1,
  "comment": 'test'
};

// 如果需要把修改后的结果写回文件,执行这行
fs.writeFileSync('./datei.json', JSON.stringify(obj, null, 2), 'utf8');
最终结果

执行后得到的对象结构就是你想要的:

{
  "user1": { "id": 1, "nVote": 0, "comment": "" },
  "user2": { "id": 2, "nVote": 1, "comment": "test" }
}

内容的提问来源于stack exchange,提问作者Axel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 05:53:13