你好,我正在尝试使用for循环将一些值添加到多维数组中。这是我到目前为止创建的内容:
var test1 = [];
var test2 = [];
for (var i = 0; i < top10.length; i++)
{
test1[i] = i;
test1[i][0] = top10[i][0];
test1[i][1] = top10[i][1];
}这只是返回一个空数组。top10是一个多维数组,它包含:

它可以包含更多的数据,这就是为什么我需要一个for循环。我正在尝试创建2个多维数组"test1“和"test2”一个将包含“欣克利火车站”和"4754“,另一个将包含”欣克利火车站“和"2274”。
我可以有多个地点不仅仅是“欣克利火车站"4754”2274“我也可以有”伦敦城"5000“1000”。这就是为什么它是一个for循环。
发布于 2017-08-16 20:46:44
您可以将一个新数组推送到需要的部分
var top10 = [
["Hinckley Train Station", "4754", "2274"],
["London City", "5000", "1000"]
],
test1 = [],
test2 = [],
i;
for (i = 0; i < top10.length; i++) {
test1.push([top10[i][0], top10[i][1]]);
test2.push([top10[i][0], top10[i][2]]);
}
console.log(test1);
console.log(test2);.as-console-wrapper { max-height: 100% !important; top: 0; }
发布于 2017-08-16 20:47:11
在这条线上
test1[i] = i;您正在将一个整数指定为外部数组的第一个元素。你没有二维数组,你有一个整数数组
在以下几行中:
test1[i][0] = top10[i][0];
test1[i][1] = top10[i][1];您正在将属性分配给一个整数,这意味着they are being boxed,但盒装的值将被丢弃。
很难说你在尝试做什么,但下面的可能更接近。您需要在每次循环中创建一个新的内部数组。
for (var i = 0; i < top10.length; i++)
{
test1[i] = [];
test1[i][0] = top10[i][0];
test1[i][1] = top10[i][1];
// Maybe do something similar with test2
}https://stackoverflow.com/questions/45713813
复制相似问题