请查看下面的代码段:
var arr = [{"id":"123", "name":"Jyotirmoy"}];
var mapObj = {};
for(var i=0; i < arr.length; i++){mapObj[arr[i].id] = arr[i];}
现在已经创建了地图,但是当我尝试使用以下键来引用它时:
mapObj.123它给我一个“意外号码”错误?但是,如果我尝试使用mapObj [123]或mapObj [“123”],它会向我显示正确的对象。我需要做什么来使用'。'来引用它。符号
答案 0 :(得分:1)
我需要做什么来使用&#39;来推荐相同的内容。&#39;符号
在这种情况下,你不能。
使用dot notation时,该媒体资源的名称必须是有效的identifier:
在JavaScript中,标识符只能包含字母数字字符(或&#34; $&#34;或&#34; _&#34;),可能不以数字开头。 < / p>
因此,要访问数字密钥,例如print()
,您必须使用bracket notation:
123
如果您决定使用点表示法,则为键添加字母前缀将允许其使用:
myObj[123]
答案 1 :(得分:1)
Javascript属性,当通过点表示法(a.x
)访问时,不能以数字开头。
如果对象是
{ one1: foo }
然后
mapObj.one1
会奏效。由于id
值是数字,因此您需要使用括号表示法(a[x]
):
mapObj[1]
或
mapObj["1"]
答案 2 :(得分:-1)
更改
var arr = [{"id":"123", "name":"Jyotirmoy"}];
要
var arr = {"id":"123", "name":"Jyotirmoy"};