【发布时间】:2016-05-12 13:27:14
【问题描述】:
一个有点倾斜的问题,我没弄明白。
我想从两个数组生成一个对象并给它们键,像这样:
var A = [1, 2, 3, 4]; var B = [7, 8, 9, 19];
[ { "x": 1, "y": 7 }, { "x": 2, "y": 8 }, { "x": 3, "y": 9 }, { "x":
4, "y": 19 } ]
我写了以下代码:
var myData = []; var A = [1, 2, 3, 4]; var B = [7, 8, 9, 19];
A.forEach( function (item, index) {
myData.push( { x: A[item], y: B[item] });
});
但它的输出是
[ { "x": 2, "y": 8 }, { "x": 3, "y": 9 }, { "x": 4, "y": 19 }, {} ]
通过将 [item - 1] 放入函数中,它可以按我的意愿工作,但我不明白为什么我看到的 w3School 示例看起来非常简单并且从 index-0 开始工作:
http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_foreach
我的小提琴示例:https://jsfiddle.net/53p5b3w8/5/
【问题讨论】:
标签: javascript foreach