javascript - 能够创建一个以字符串为键的映射,但是当引用该键时,它会给出 "Unexpected number error"

标签 javascript dictionary

请查看下面的代码片段:

var arr = [{"id":"123", "name":"Jyotirmoy"}];
var mapObj = {};
for(var  i=0; i < arr.length; i++){mapObj[arr[i].id] = arr[i];}

现在 map 已创建,但是当我尝试使用以下键引用它时:

mapObj.123 它给我一个“意外数字”错误?但是如果我尝试对 mapObj[123] 或 mapObj["123"] 进行相同的操作,它会显示正确的对象。我需要做什么才能使用“.”来引用相同内容符号?

最佳答案

通过点表示法 (a.x) 访问时,Javascript 属性不能以数字开头。

如果该对象是

{ one1: foo }

然后

mapObj.one1

可以。由于 id是数字,因此您需要使用括号表示法 (a[x]):

mapObj[1]

mapObj["1"]

关于javascript - 能够创建一个以字符串为键的映射,但是当引用该键时,它会给出 "Unexpected number error",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33382195/

相关文章:

javascript - 仅输入 : detect "capsLock" on keypress 中的数字

javascript - 使用 ImageMagick 将fabric.js Canvas json数据渲染到图像文件

arrays - Swift:删除文档字段Firestore(云数据库)内字典中的元素

具有大对象的 Python 多处理管道将挂起

python - 如何展平 pandas 数据框多列中的字典列表

c# - 双向键值收集

javascript - 如何使用 angularjs 从 jquery 中的主体中删除类

javascript - 扩展同名的 Node.addEventListener 方法

javascript - jQuery可在jsFiddle上使用,但不能在实时页面上使用

python - 在包含字典的列表中获取最小值(键,值)