【问题标题】:JavaScript create or update key in JSON object [duplicate]JavaScript在JSON对象中创建或更新键[重复]
【发布时间】:2021-07-15 14:37:36
【问题描述】:

我想使用纯 JavaScript 创建 JSON 对象,如下所示:

{
  "0": {
     "0": {
          "key1": 1,
          "key2": 2
     },
     "1": {
          "key1": 1,
          "key2": 2
      }
  }
  "1": {
     "0": {
          "key1": 1,
          "key2": 2
      }
  }
}

但是当我尝试下面的代码时,我得到了未定义的错误:

var myJosnObj = {};
myJosnObj["0"]["0"] = {"key1": 1,"key2": 2};

我收到错误: Error: myJosnObj[0] is undefined

我想创建或更新 json 文档中的现有密钥。

【问题讨论】:

  • 首先,myJosnObj["0"] 尝试获取 myJosnObj 中键 "0" 的值(它不存在,所以你得到 undefined),然后是随后的 @987654328 @ 尝试将键 "0" 设置在您刚刚抓取到 = 右侧的对象的那个值上。由于您抓取的该值不存在/未定义,因此无法在其上设置"0"

标签: javascript


【解决方案1】:
const myJosnObj = {};
myJosnObj["0"] = {}
myJosnObj["0"]["0"] = {"key1": 1,"key2": 2};

你需要定义 myJosnObj["0"]

【讨论】:

    【解决方案2】:

    你可以直接做:

    const myJosnObj = 
          { "0": 
            { "0": { "key1": 1, "key2": 2} 
            , "1": { "key1": 1, "key2": 2} 
            } 
          , "1": 
            { "0": { "key1": 1, "key2": 2} 
            } 
          } 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-09
      • 2014-11-13
      • 1970-01-01
      相关资源
      最近更新 更多