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

如何向JSON对象中添加新数据?使用push方法无效该如何解决

问题原因

push() 是JavaScript数组的专属内置方法,你当前操作的是普通Object对象,本身没有实现该方法,因此调用后不会生效,甚至会抛出类型错误。

解决方法

以下是几种常用的对象新增键值对的方案:

  • 方案1:直接赋值新增单个/多个键值对
    适用于新增少量键值对的场景,直接给原对象指定键赋值即可:
    // 原对象
    const userMap = {
      "8282748274" : "melly",
      "2764726482" : "john",
      "8268274827" : "carol"
    }
    // 新增单个键值对
    userMap["385835638578"] = "alex"
    // 新增多个就重复赋值即可
    userMap["0000000000"] = "NewDataHere"
    userMap["0000000001"] = "MoreNewData"
    
  • 方案2:批量合并新对象到原对象
    适用于已有打包好的新数据对象的场景,用Object.assign方法批量合并,无需逐个赋值:
    const newData = {
      "385835638578": "alex",
      "0000000000": "NewDataHere",
      "0000000001": "MoreNewData"
    }
    // 将newData的所有键值对合并到原userMap上,会直接修改原对象
    Object.assign(userMap, newData)
    
  • 方案3:不修改原对象,生成全新对象
    如果需要保留原对象不变,用扩展运算符生成包含所有旧数据和新数据的新对象即可:
    const updatedUserMap = {
      ...userMap,
      "385835638578": "alex",
      "0000000000": "NewDataHere",
      "0000000001": "MoreNewData"
    }
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 20:15:04