如何在不使用javascript循环的情况下从两个数组创建对象。
例如:
array1 = [1,2,3,4,5];
array2 = [A,B,C,D,E];
我想从下面的对象
obj = {
'1': 'A',
'2': 'B',
'3': 'C',
'4': 'D',
'5': 'E',
}
提前致谢
答案 0 :(得分:5)
var obj = {}
array1 = [1, 2, 3, 4, 5];
array2 = ['A', 'B', 'C', 'D', 'E'];
array1.forEach(function(value, index) {
obj[value] = array2[index];
});
console.log(obj);
答案 1 :(得分:2)
尝试使用$.each()
迭代其中一个数组并根据您的要求构建对象,
var array1 = [1,2,3,4,5],array2 = ['A','B','C','D','E'];
var obj = {};
$.each(array2,function(i,val){
obj[array1[i]] = val;
});
答案 2 :(得分:0)
ES6,阵列减少解决方案。
ID name Date CheckIn CheckOut
01 Joe 2017-10-31 08:00:00 17:10:00
02 Jean 2017-10-31 08:10:00 17:05:00

答案 3 :(得分:0)
只是为了在不使用任何迭代方法的情况下创建类似的东西。
const array1 = [1,2,3,4,5];
const array2 = ['A','B','C','D','E'];
let combineKeyValueProxy = new Proxy({}, {
set: function(target, prop, value, receiver) {
target[array1[prop]] = value;
return true
}
});
const output = Object.assign(combineKeyValueProxy, array2);
console.log(output) // Proxy {1: "A", 2: "B", 3: "C", 4: "D", 5: "E"}