js 实现按指定个数分割数组

思路:
声明一个空数组,利用Array.slice()方法将分割后的数组追加到该数组上

实现:

// 根据指定个数分割数组
function chunkArr (arr, size) {
  //判断如果不是数组(就没有length),或者size没有传值,size小于1,就返回空数组
  if (!arr.length || !size || size < 1) return []
  let [start, end, result] = [null, null, []]
  for (let i = 0; i < Math.ceil(arr.length / size); i++) {
    start = i * size
    end = start + size
    result.push(arr.slice(start, end))
  }
  return result
}

// 验证方法
let arrList = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]

console.log(chunkArr(arrList, 5))

方法返回值打印结果如图:

js 实现按指定个数分割数组_第1张图片

注:Math.ceil() 函数返回大于或等于一个给定数字的最小整数。

具体介绍参考https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Math/ceil

你可能感兴趣的:(JS)