gpt4 book ai didi

javascript - 为什么将数组插入另一个数组会合并元素而不是将它们放入单独的数组中

转载 作者:行者123 更新时间:2023-12-03 09:46:06 24 4
gpt4 key购买 nike

我有一个数组,我迭代地将新值插入其中,在每次迭代结束时,我希望将形成的数组插入到新数组中。例如:如果在第一次迭代结束时 array=[1,2,3,4],则 bigarray=[[1,2,3,4]]。第二次迭代后,如果 array=[5,6,7,8],则 bigarray=[[1,2,3,4],[5,6,7,8]] 依此类推。

所以基本上 bigarray 是包含一个数组列表,我可以从中获取数组。例如:bigarray[0] 应该给我一个数组 [1,2,3,4]

我现在正在做的是 array.push(some value) 和最后的 bigarray.push(array)。这样做会将所有值合并到一个数组中,如下所示bigarray=[1,2,3,4,5,6,7,8] 我可以从中分离第一个数组和第二个数组。

一段代码:

            var array=[];


for(var i=0; i<range;i++){
var arraychart=[];
var jan= resp.ChartDataList[i].jan;
arraychart.push(jan);
var feb= resp.ChartDataList[i].feb;
arraychart.push(feb);
var mar= resp.ChartDataList[i].mar;
arraychart.push(mar);
var apr= resp.ChartDataList[i].apr;
arraychart.push(apr);
var may= resp.ChartDataList[i].may;
arraychart.push(may);
var jun= resp.ChartDataList[i].jun;
arraychart.push(jun);
//var jan= resp.ChartDataList[i].jan;
array.push(arraychart);
alert (arraychart);

}
alert(array);

如何达到上述预期结果?

最佳答案

您应该以这种方式调用 array.push (array.push([1,2,3])) 而不是 (array.push(1,2,3))

var bigarray = [];

bigarray.push( [1,2,3,4] );
bigarray.push( [5,6,7,8] );

console.log(bigarray); // prints [[1,2,3,4],[5,6,7,8]]

编辑

看到你的代码后,你的代码没有问题,只需使用 console.log 而不是 alert 打印数组,因为 alert 将调用大数组的.toString(),并将其展平

关于javascript - 为什么将数组插入另一个数组会合并元素而不是将它们放入单独的数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31026623/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com