Home

vtan edited this page Oct 11, 2016 · 4 revisions

这是FCC中国学员的维基百科,欢迎大家来这里写自己的学习心得和解题思路


题目:猴子吃香蕉。传送门:https://freecodecamp.cn/challenges/chunky-monkey

题意:把一个大数组按照指定的大小分割成几个小数组。

根据gitter中文频道的用户反馈,还是有不少同学卡在这里。

为了便于小伙伴理解,我思考许久,找到一个形象例子:

厨师是如何切香蕉的?

先从香蕉头部开始切起,每一段2厘米,剩余的部分作为一段。

头部就是i=0,2厘米就是步长(size)。

切这个动作对应的就是数组的slice方法。

每切完一段,我们就把它装盘(push)。

最后把盛满香蕉的盘子(result)端给客人,完成任务。

把上面的文字翻译成代码,就是:

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

编程中有很多相对枯燥的概念,理解起来很困难。

遇到这种时候,要学会类比,主动找到生活中一些类似的概念,这样理解起来会很轻松。

希望对大家有帮助,也欢迎大家点击右上角的New Page来写自己的学习心得。^_^