如何从2个相同长度的数组创建对象

时间:2019-03-14 14:52:52

标签: javascript arrays object

我正在尝试从2个数组中创建一个对象。

var arr1 = ["2000", "10003", "1234000", "44444444", "9999", "11", "11", "22", "123"];
var arr2 = [2, 4, 10, 32, 36, 2, 2, 4, 6];

我使用了for循环来填充对象:

var obj= {};

for(var i = 0; i < arr1.length; i++) { 
    obj[arr1[i]] = arr2[i]; 
}

结果:

[object Object] {
  10003: 4,
  11: 2,
  123: 6,
  1234000: 10,
  2000: 2,
  22: 4,
  44444444: 32,
  9999: 36
}

它的确基于我的2个数组创建了对象,但是忽略了1个在数组中重复的值。我不想排除它们。在我的对象中包含所有数组元素的诀窍是什么?结果甚至与原始数组的顺序也不一样...

谢谢!

1 个答案:

答案 0 :(得分:0)

如果可以的话,将值填充到数组中。

var obj= [];
for(var i = 0; i < arr1.length; i++) { 
  var obj1 ={};
  obj1[arr1[i]] = arr2[i];           
  obj.push(obj1);
}