好奇为什么作者用括号here
包围了对象声明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"};
答案 0 :(得分:3)
没有功能差异。
如果您在eval
调用中使用JSON文本来获取JavaScript对象you have to use parentheses to disambiguate the resulting expression from a statement,但这不是这种情况:对象文字遵循=
标记因此只能作为表达式进行解析,不需要消除歧义。
因此,作者完成了:
答案 1 :(得分:0)
正如其他人所提到的,在使用eval
时指定括号有一些价值,但这不是这里的情况。在这个特定的代码片段中,任何一种方式都可以完全相同,因此无论出于何种原因,这只是作者的偏好。