首页 > 解决方案 > 将数组拆分为多维数组块

问题描述

我本来是要

“编写一个函数,将数组(第一个参数)分成大小长度(第二个参数)的组,并将它们作为二维数组返回。”

不幸的是,我无法弄清楚,因此我检查了代码解决方案。问题是我不明白为什么要使用这个条件语句:if (a % size !== size - 1)

function chunkArrayInGroups(arr, size) {

      var temp = [];
      var result = [];

      for (var a = 0; a < arr.length; a++) {
        if (a % size !== size - 1)
          temp.push(arr[a]);
        else {
          temp.push(arr[a]);
          result.push(temp);
          temp = [];
        }
      }

      if (temp.length !== 0)
        result.push(temp);
      return result;
    }

标签: javascriptarraysmultidimensional-arraylogic

解决方案


该条件语句检查当前索引 ( a) 是否以块 () 的大小为模size不等于size - 1。这样做的目的是使用索引检查是否应该创建新块。


推荐阅读