我可以使用常见的Javascript / Coffeescript特定习语来完成此操作吗?主要是出于好奇。
我有两个数组,一个由所需的键组成,另一个由所需的值组成,我希望将其合并到一个对象中。
keys = ['one', 'two', 'three']
values = ['a', 'b', 'c']
答案 0 :(得分:14)
var r = {},
i,
keys = ['one', 'two', 'three'],
values = ['a', 'b', 'c'];
for (i = 0; i < keys.length; i++) {
r[keys[i]] = values[i];
}
答案 1 :(得分:6)
keys = ['one', 'two', 'three']
values = ['a', 'b', 'c']
d = {}
for i, index in keys
d[i] = values[index]
说明: 在coffeescript中,您可以迭代数组并获取每个项目及其在数组或索引上的位置。 因此,您可以使用此索引将键和值分配给新对象。
答案 2 :(得分:3)
只要两个数组的长度相同,就可以这样做:
var hash = {};
var keys = ['one', 'two', 'three']
var values = ['a', 'b', 'c']
for (var i = 0; i < keys.length; i++)
hash[keys[i]] = values[i];
console.log(hash['one'])
console.log(hash.two);