好奇为什么作者在这里用括号括起来对象声明
rtpg.map.START_KEYS = ({"Key 1":"Value 1", "Key 2":"Value 2", "Key 3":"Value 3", "Key 4":"Value 4"});
为什么不:
rtpg.map.START_KEYS = {"Key 1":"Value 1", "Key 2":"Value 2", "Key 3":"Value 3", "Key 4":"Value 4"};
好奇为什么作者在这里用括号括起来对象声明
rtpg.map.START_KEYS = ({"Key 1":"Value 1", "Key 2":"Value 2", "Key 3":"Value 3", "Key 4":"Value 4"});
为什么不:
rtpg.map.START_KEYS = {"Key 1":"Value 1", "Key 2":"Value 2", "Key 3":"Value 3", "Key 4":"Value 4"};
没有功能上的区别。
如果您在调用中放置 JSON 文本eval
以获取 JavaScript 对象,则必须使用括号来消除语句中生成的表达式的歧义,但这里不是这种情况:对象字面量跟随一个=
标记,因此可以被解析仅作为表达式,无需消歧。
因此,作者这样做是出于:
正如其他人所提到的,在使用 时指定括号有一些价值eval
,但这里不是这种情况。在这个特定的代码片段中,任何一种方式的工作方式都完全相同,因此无论出于何种原因,这只是作者的偏好。