为了账号安全,请及时绑定邮箱和手机立即绑定

js中如何遍历数组的非规则的下标?

js中如何遍历数组的非规则的下标?

千万里不及你 2019-02-25 11:27:35
假设有一数组a=new Array(3)a[0]=1a["a"]="a"a[2]=2假设我不知道下标是0,“a”,2,我怎样遍历出这个数组的下标0,"a",2出来?感觉js的数组和字典很类似啊,是不是可以当成字典来用了?
查看完整描述

2 回答

?
Helenr

TA贡献1780条经验 获得超4个赞

理论上js中任何对象都可以做为字典来用,但是你拿数组当字典用就会有下面的问题比如:


var myArray = [ "foo", 42, "bar" ];

    myArray["3"] = "baz";

    myArray.length; // 4

    myArray[3]; // "baz"

你这里是想添加一个3的属性,但是却做了改变第3个元素的事情!!!这就是它的副作用


js中适合做字典的有 空对象,或者ES6的Map,但是map可能一些浏览器不支持。

所以这种方式是我比较推荐的,就是创建一个空对象 Object.create(null);然后配上 

属性访问语法:obj["foo"]= bar; 和 for in 来使用


查看完整回答
反对 回复 2019-03-05
  • 2 回答
  • 0 关注
  • 997 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信