实现一个函数 chunk(arr, size),将数组按指定大小分割成多个块

推荐答案

本题详细解读

题目分析

题目要求实现一个函数 chunk(arr, size),该函数接受两个参数:

  • arr:需要分割的数组。
  • size:每个块的大小。

函数的目标是将数组 arr 按照 size 的大小分割成多个块,并返回这些块组成的数组。

解题思路

  1. 初始化结果数组:首先创建一个空数组 result,用于存储分割后的块。
  2. 遍历原数组:使用 for 循环遍历原数组 arr,每次遍历的步长为 size
  3. 分割数组:在每次循环中,使用 slice 方法从当前索引 i 开始,截取长度为 size 的子数组,并将其推入 result 数组中。
  4. 返回结果:循环结束后,返回 result 数组。

代码解释

  • result.push(arr.slice(i, i + size))slice 方法用于从数组中提取从索引 ii + size 的元素(不包括 i + size),并将这些元素作为一个新的子数组推入 result 中。
  • i += size:每次循环后,索引 i 增加 size,以便下一次循环从新的位置开始截取。

示例

在这个示例中,数组 [1, 2, 3, 4, 5, 6, 7] 被分割成了三个块,每个块的大小为 3,最后一个块的大小为 1

纠错
反馈