【发布时间】:2013-10-25 21:01:02
【问题描述】:
我正在尝试在 javascript 中创建以下数据结构:
d = {"foo": [3, 77, 100], "bar": [10], "baz": [99], "biff": [10]}
我的起始数据结构是一个字典列表:
input = [{"key": "foo", "val": 3}, {"key": "bar", "val": 10}, {"key": "foo", "val": 100}, {"key": "baz", "val": 99}, {"key": "biff", "val": 10}, {"key": "foo", "val": 77]
如何生成我想要的数据结构?以下代码似乎没有将值附加到值数组。
var d = {}
for (var i in input) {
var datum = input[i];
d[datum.key] = datum.val
}
【问题讨论】:
-
hops是什么?你不是说var datum = input[i];吗?附言不要将for..in用于数组:stackoverflow.com/a/500531 -
迭代
input,查看d是否对"key"的每个值都有一个属性,如果没有,则使用该值给d一个属性,并分配一个数组。然后将"val"的值压入数组。 -
啊,谢谢。我的错,错字。
-
JavaScript“字典”被称为对象。仅供参考。
标签: javascript