【发布时间】:2018-02-13 13:20:47
【问题描述】:
也许这是以前问过的,我不知道如何寻找它,所以我提前申请了我完全缺乏措辞技巧。所以,就这样吧。我正在用 ECMA5 编程(所以没有可用的花哨的数组/对象方法)。我有一个数组,其中包含键,可以说:
var keys = ["name", "age", "school"];
然后,包含值的数组数组:
var values = [["John John", 16, "Saints Hills High School"], ["Miranda Knobs", 12, "St Mary Junior High"], ["Patricia Lee", 13, "Milwakee High School"]];
我想创建一个对象数组。每个对象都有来自第一个数组的键和来自第二个数组的值,如下所示:
var result = [{name: "John John", age: 16, school: "Saints Hills High School"}, {name: "Miranda Knobs", age: 12, school: "St Mary Junior High"}, {name: "Patricia Lee", age: 13, school: "Milwakee High School"}];
我看到了一些带有 2 个数组的问题/解决方案,一个包含键,一个包含值,但我不知道如何为每个对象重复第一个数组多次。
【问题讨论】:
-
到目前为止你做了什么?
-
1/2 由于重复,我不同意关闭此 Q。提供的链接Looping to create object Keys and Values in Javascript from 2D arrays 和后续的重复链接Easiest way to interate over a complex JSON object via Javascript 都没有提供/讨论
Array.prototype.reduce方法,它比经典循环有很多优势。 -
2/2 如果我能在这里提供完全这样的解决方案,我将不胜感激,因为我努力回答了 OP 的问题,并且在按下“提交答案”按钮前几秒钟,它被禁用了将此 Q 设置为“重复”。
-
...没关系...@NinaScholz 同时确实为此类问题提供了两个终极解决方案...Easiest way to interate over a complex JSON object via Javascript ...现在人们可能会认为这个问题终于解决了。跨度>
-
@PeterSeliger 感谢您提供的链接。同样,正如我假设的那样,这是我的措辞问题,因为我在搜索解决方案时没有考虑循环和二维数组。
标签: javascript arrays javascript-objects