我有以下代码:
var factory = {
query: function (selectedSubject) {
..
}
}
在 Javascript 中,这与以下内容相同:
var factory = {
'query': function (selectedSubject) {
..
}
}
我已经看到两者都使用过,我不确定是否有任何区别。
我有以下代码:
var factory = {
query: function (selectedSubject) {
..
}
}
在 Javascript 中,这与以下内容相同:
var factory = {
'query': function (selectedSubject) {
..
}
}
我已经看到两者都使用过,我不确定是否有任何区别。
该标准要求属性名称为以下之一:
PropertyName :
IdentifierName
StringLiteral
NumericLiteral
也就是说,所有这些都是有效的:
obj = {
"query": ....
'query': ....
query: ....
12e45: ....
}
请注意,与流行的观点相反,该标准不要求名称是有效的标识符,只要求“标识符名称”。这实际上意味着您可以使用 JS 保留字作为属性名称:
x = {
if: 100,
function: 200,
}
console.log(x.if + x.function) // 300
并不是说它在日常编程中非常有用,只是一个值得了解的有趣事实。
您可以同时使用两者,但如果有空格,则不能使用第一个选项。这就是为什么有第二种选择。
有效的 JSON 要求 "" 包围匿名对象的属性名称,但如果属性名称不是保留字或不包含某些特殊字符,则可以省略它们。通常使用“”更安全。