如何在javascript中动态设置哈希键

如何在javascript中动态设置哈希键,javascript,hash,Javascript,Hash,有了这个代码 h = {} for (var i in [0,1]){ h[i.ToString] = i; } 我对h[“1”]=1和h[“2”]=2期望得到相同的结果 为什么这段代码不起作用,我如何在javascript中动态定义哈希键?for。。在中,JS中的循环迭代键,而不是值()。 因此,在您的例子中,您需要迭代其中的数组的键。 这些将是0,1,2。。。不管你在里面放了什么 你可以这样做: var obj = {}; var data = [1,2,3,4]; data.forEac

有了这个代码

h = {}
for (var i in [0,1]){ h[i.ToString] = i; }
我对
h[“1”]=1
h[“2”]=2
期望得到相同的结果


为什么这段代码不起作用,我如何在javascript中动态定义哈希键?

for。。在中,JS中的循环迭代键,而不是值()。 因此,在您的例子中,您需要迭代其中的数组的键。
这些将是0,1,2。。。不管你在里面放了什么

你可以这样做:

var obj = {};
var data = [1,2,3,4];
data.forEach(function(val) {
    obj[val] = val;
});