javascript - JSON 对象中的映射键

标签 javascript json

是否可以将 JSON 中的表单键从双引号中的键更改为不带引号的键?

来自

let a = {
   "key1": "value1",
   "key2": "value2",
   "key3": "value3"
}

let b = {
    key1: "value1",
    key2: "value2",
    key3: "value3"
}

最佳答案

这是一个有效的 JavaScript 对象,但不是有效的 JSON:

let b = {
    key1: "value1",
    key2: "value2",
    key3: "value3"
}

如果您正在编写 JavaScript,则可以毫无问题地这样做。

您还可以使用单引号或重音符号。这些都是有效的:

let b = {
    key1: 'value1',
    key2: 'value2',
    key3: 'value3'
}

let b = {
    key1: `value1`,
    key2: `value2`,
    key3: `value3`
}

在某些情况下,您需要包含单重音、双重音或重音。例如,当您的键以数字开头或其中包含空格时:

为此,您需要它们:

let obj = {
  '0key': 'value'
}

还有这个:

let obj = {
  'john smith': 'value'
}

这里是一些补充阅读:

考虑dot notation当您询问它是否有效时。

b.key1是有效的点符号,但是 b.0不是,也不是b.john smith .

另一个表示法是 bracket notation它允许您引用不支持点表示法的键。

b['key1']是有效的括号表示法, b['0'] 也是有效的和b['john smith'] .

关于javascript - JSON 对象中的映射键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48653638/

相关文章:

javascript - 使用 Javascript 检测负数以开发计算器

javascript - 奇怪的 jquery 动画行为

javascript - Angular Directive(指令) Controller "this"返回未定义

javascript - 在 jQuery 中识别 $(this)

json - 编码泛型类型时生命周期参数的数量错误

javascript - 如何在 Javascript 中格式化 JSON 日期?

php - CENTOS 7 - curl PHP5 cli 和无效的 Content-Length

javascript - 使用 AngularJS 选择同一循环迭代中的所有复选框

javascript - 将动态生成的对象数组传递给 onclick 处理程序

javascript - jQuery .getJSON 返回数组变量和 json 数组操作