我在控制台上有以下对象self.originalData
:
但是,当我尝试访问originalData
,
self.originalData[0hcMSJXljH]
收到以下错误
未捕获的>语法错误:意外的令牌ILLEGAL
我无法弄清楚我做错了什么。
答案 0 :(得分:3)
您可以使用:
self.originalData["0hcMSJXljH"]
代替。对象键是字符串,因此如果使用[]
表示法,则必须在括号内放置一个字符串或包含字符串的变量。
您的特殊情况有点不寻常,因为通常情况下,您可以使用obj.property
中的点符号,但由于您的密钥以数字开头,因此它不是与点符号一起使用的合法标识符(您不能做self.originalData.0hcMSJXljH
)。因此,您必须使用该特定键的括号表示法。
答案 1 :(得分:2)
尝试将密钥放在这样的引号中:
self.originalData['0hcMSJXljH']
答案 2 :(得分:1)
你试过吗
self.originalData["0hcMSJXljH"];
否则:
self.originalData.0hcMSJXljH;
编辑:最后一个不可能,因为第一个字符是一个数字,正如我所解释的那样
答案 3 :(得分:1)
您必须使用引号:
self.originalData['0hcMSJXljH']
答案 4 :(得分:1)
您的密钥中不使用引号,因此您似乎正在尝试使用 0hcMSJXljH
标识的变量作为密钥。但是,0hcMSJXljH
不是有效的变量标识符,因为它以数字开头,因此您会收到非法字符错误。
只需使用字符串,而不是标识符:
self.originalData["0hcMSJXljH"]