javascript 数组用[]不可以声明关联数组,但是可以存放关联数组?

var a = ["name","age","sex"]; 
var b = ["lisi",18,"man"]; 
var arr = new Array(); 
for(var i = 0; i < a.length; i++) { 
arr[a[i]] = b[i]; 
} 
console.log(arr);
阅读 3.1k
2 个回答

可以试试使用Map。。

var myMap = new Map();
myMap.set("name", "lisi");
myMap.set("age", 18);
myMap.set("sex", "man");
for (var [key, value] of myMap) {
  console.log(key + " = " + value);
}

对象就是关联数组!obj.key = value 相当于 obj['key'] = value
arr[a[i]] = b[i]; 这句话只是给arr对象添加了三个属性 :
arr.name = 'lisi'; arr.age = 18; arr.sex = 'man';
arr数组本身的length还是0 。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题