对freeCodeCamp上JavaScript的算法部分的题目进行记录,方便以后复习。
题目:
猴子吃香蕉, 分割数组
(猴子吃香蕉可是掰成好几段来吃哦)
把一个数组arr
按照指定的数组大小size
分割成若干个数组块。
例如:chunk([1,2,3,4],2)=[[1,2],[3,4]];
chunk([1,2,3,4,5],2)=[[1,2],[3,4],[5]];
思路:
分割数组用到了Array对象的push()和slice()方法,push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度,slice() 方法可从已有的数组中返回选定的元素。
实现:
function chunk(arr, size) {
var Array=[];
for(var i=0;i<arr.length;i+=size)
{Array.push(arr.slice(i,i+size));}
return Array;
}
chunk(["a", "b", "c", "d"], 2);//输出[["a", "b"], ["c", "d"]]