1 | var isArray = require('./isArray')
|
2 |
|
3 | /**
|
4 | * 将一个数组分割成大小的组。如果数组不能被平均分配,那么最后一块将是剩下的元素
|
5 | *
|
6 | * @param {Array} array 数组
|
7 | * @param {Number} size 每组大小
|
8 | * @return {Array}
|
9 | */
|
10 | function 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 |
|
28 | module.exports = chunk
|