请查看下面的代码片段:

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”]进行操作,则会显示正确的对象。我需要怎么做才能使用'。'引用相同的内容符号?

最佳答案

通过点符号(a.x)访问的Javascript属性不能以数字开头。

如果对象是

{ one1: foo }


然后

mapObj.one1


会工作。由于id值为数字,因此您需要使用方括号(a[x]):

mapObj[1]


要么

mapObj["1"]

10-05 22:29