【发布时间】:2016-02-26 16:18:31
【问题描述】:
我用下面的函数解决了来自 FreeCodeCamp 的算法挑战,但我想知道这是否是解决问题的“好”方法,最具体地说,因为我将计数器设置为 i+=0 并从头部拼接索引.我是否在这里创建了反模式?有什么更合乎逻辑的吗,你能解释一下原因吗?提前感谢您的帮助!
function chunk(arr, size) {
var newArr = [];
for (i=0; i<arr.length; i+=0) {
var sliced = arr.slice(i, size);
newArr.push(sliced);
arr.splice(0, size);
}
return newArr;
}
chunk([0, 1, 2, 3, 4, 5, 6, 7, 8], 4);
returns--> [ [ 0, 1, 2, 3 ], [ 4, 5, 6, 7 ], [ 8 ] ]
【问题讨论】:
-
您可以查看
Array.slice()。此外,如果这个问题的目的是寻求改进,您应该尝试 CodeReviews -
我投票决定将此问题作为离题结束,因为它要求进行代码审查。在 codereview.stackexchange.com 上询问
标签: javascript arrays