UNPKG

701 BJavaScriptView Raw
1var isArray = require('./isArray')
2
3/**
4 * 将一个数组分割成大小的组。如果数组不能被平均分配,那么最后一块将是剩下的元素
5 *
6 * @param {Array} array 数组
7 * @param {Number} size 每组大小
8 * @return {Array}
9 */
10function chunk (array, size) {
11 var index
12 var result = []
13 var arrLen = size >> 0 || 1
14 if (isArray(array)) {
15 if (arrLen >= 0 && array.length > arrLen) {
16 index = 0
17 while (index < array.length) {
18 result.push(array.slice(index, index + arrLen))
19 index += arrLen
20 }
21 } else {
22 result = array.length ? [array] : array
23 }
24 }
25 return result
26}
27
28module.exports = chunk