注意:这个问题与 Doug Crockford 所写的“JavaScript: The Good Parts”一书有关。 在阅读有关对象的一章时,我遇到了如下声明:
如果名称是合法的 JavaScript 名称而不是保留字,则对象文字中属性名称的引号是可选的。所以引号是必需的
"first-name"
,但是是可选的"first_name"
。
以下是书中提供的对象字面量示例:
var stooge = {
"first-name": "Jerome",
"last-name": "Howard"
};
现在,我可能误解了这里的文字,但对我来说,Crockford 先生似乎在说 first-name
(用连字符)是保留字,而first_name
(用下划线)不是。如果是这样的话,我不明白前者如何成为保留字。我在书中没有找到其他解释为什么会这样。有人可以解释一下吗?