是否可以将 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'
}
这里是一些补充阅读:
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Property_accessors
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects
- https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/Basics
考虑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/