gpt4 book ai didi

javascript - "first-name"如何成为 JavaScript 中的保留字?

转载 作者:数据小太阳 更新时间:2023-10-29 05:02:38 26 4
gpt4 key购买 nike

注意:此问题与 Doug Crockford 撰写的“JavaScript:The Good Parts”一书有关。当我阅读关于对象的一章时,我遇到了如下声明:

The quotes around a property's name in an object literal are optional if the name would be a legal JavaScript name and not a reserved word. So quotes are required around "first-name", but are optional around "first_name".

下面是书中提供的一个对象字面量的例子:

var stooge = {
"first-name": "Jerome",
"last-name": "Howard"
};

现在,我可能误解了这里的文字,但对我来说,Crockford 先生似乎在说 first-name(带连字符)是一个保留字,而first_name(带下划线)不是。如果是这样的话,我不明白前者怎么会是保留字。我在书中没有找到其他解释为什么会这样。有人可以解释一下吗?

最佳答案

不是保留字。如果没有引号,javascript 会将 - 字符解释为减法运算符,尝试执行该操作,但会失败。

其中一个原因是 javascript 更愿意尽可能地忽略空格。因此 2 - 32-3 相同。

将整个内容放在引号中会导致 js 将其解释为另一个字符,而不是运算符。

关于javascript - "first-name"如何成为 JavaScript 中的保留字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18854608/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com