在JavaScript中将数组的块推送到另一个数组中

在JavaScript中将数组的块推送到另一个数组中,javascript,Javascript,我有一个包含速度的地图点数组,我想每25个点创建一个新数组,并将它们放入另一个称为块的数组中。这就是我正在做的: var chunks = []; // the array of chunks var tempArray = []; //used for storing current chunk var currentLoop = 0; //used for checking how many items have been taken for (var i = 0; i < gon.m

我有一个包含速度的地图点数组,我想每25个点创建一个新数组,并将它们放入另一个称为块的数组中。这就是我正在做的:

var chunks = []; // the array of chunks
var tempArray = []; //used for storing current chunk
var currentLoop = 0; //used for checking how many items have been taken
for (var i = 0; i < gon.map_points.length; i++) {
    if (currentLoop == 26) { // if the current items stored is above 25
        chunks.push(tempArray); // push the chunk
        currentLoop = 0; // reset the count
        tempArray = []; // reset the chunk
    }
    tempArray.push(gon.map_points[i].speed); // add item into chunk
    currentLoop++; // increase count
}
var chunks=[];//块数组
var tempArray=[]//用于存储当前块
var-currentLoop=0//用于检查已取走多少物品
对于(变量i=0;i
因此,除非贴图点的数组不是一个完美的点数(例如,它可能是117),否则这很好,因此我不会将最后17个点添加到我的块数组中

是否有一种方法可以将数组分为25个点,而不考虑项目总数?

您可以使用索引,并根据需要按大小进行计数

var array=array.apply(null,{length:65}).map(函数(j,j){return j;}),
chunks=[],
chunkSize=25,
i=0;
while(i

.as console wrapper{max height:100%!important;top:0;}
您可以使用splice像这样设置块

var s=[];
var结果=[];
函数生成(){
对于(变量i=0;i<117;i++){
s、 推(i);
}
}
生成();
//控制台日志
而(s.长度>25){
//控制台日志(s.拼接(0,25))
结果[结果长度]=s拼接(0,25);
}
结果[结果.长度]=s;

控制台日志(结果)你可以将地图点设置为25,你将得到它循环通过的确切次数。这样,您就可以执行一个变通方法使用切片将数组复制到另一个数组中