首页 > 代码库 > Chunky Monkey

Chunky Monkey

 

猴子吃香蕉可是掰成好几段来吃哦!

把一个数组arr按照指定的数组大小size分割成若干个数组块。

例如:chunk([1,2,3,4],2)=[[1,2],[3,4]];

chunk([1,2,3,4,5],2)=[[1,2],[3,4],[5]];

当你完成不了挑战的时候,记得开大招‘Read-Search-Ask‘。

这是一些对你有帮助的资源:

  • Array.push()
  • Array.slice()

作为一个小白,我的思路就是先看看到底能截几段,然后把截的每一段依次放入一个新的数组,最后返回这个数组

function chunk(arr, size) {
  var array=[];
  var num=Math.ceil(arr.length/size);   //向上取整,不足一次也算一次
    for(var i=0;i<num;i++){
      array.push(arr.slice(i*size,(i+1)*size));
    }
    return array;
}

后来在别的网站上看到更厉害的算法,引用过来

function chunk(arr, size) {
  var array= [];  
  for(var i = 0; i < arr.length; i+=size){
    array.push(arr.slice(i,i+size));
  }  
  return array;
}

这个就比较厉害了,先让我膜拜3分钟

Chunky Monkey