javascript - 如何删除数组内数组的最后一项

标签 javascript arrays

如何删除数组内数组的最后一项。在本例中,我想删除数组内部数组末尾的空值。这是我的代码

function chunkArrayInGroups(arr, size) {
  // Break it up.
  var arrWithSubArr = [];

  for(var i = 0; i < arr.length / size; i++){
    arrWithSubArr.push([]);
  }
  var index = 0;
  var whichSubArr = 0;
  for(whichSubArr = 0; whichSubArr < arr.length / size; whichSubArr++){
    for(i = 0; i < size; index++){
      arrWithSubArr[whichSubArr].push(arr[index]);
      i++;
    }
  }

  return arrWithSubArr;
}

chunkArrayInGroups([0, 1, 2, 3, 4, 5], 4);

最佳答案

我相信您的最终目标是将原始数组拆分为多个数组,每个数组等于或小于指定的大小(如果最后一个子数组不等于size )。与其删除循环中添加的未定义值,不如更轻松地阻止它们被插入。

function chunkArrayInGroups(arr, size) {
  // Break it up.
  var arrWithSubArr = [];

  var whichSubArr = 0;

  // Using Math.ceil returns the smallest integer greater than or equal to the number
  // In this case your minimum number of sub arrays needed to contain all the items of the original array
  var numOfSubArrs = Math.ceil(arr.length/size);

  // create the empty sub arrays
  for(var i = 0; i < numOfSubArrs; i++){
    arrWithSubArr.push([]);
  }

  for (var i =0; i < arr.length; i++) {
      arrWithSubArr[whichSubArr].push(arr[i]);
      // starting with the inital sub array at position 0
      // increment to the next sub array once the current one is equal to the specified size
      if (arrWithSubArr[whichSubArr].length == size){
          whichSubArr++;
      }
  }

  return arrWithSubArr;
}

chunkArrayInGroups([0, 1, 2, 3, 4, 5], 4);

关于javascript - 如何删除数组内数组的最后一项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39112666/

相关文章:

c# - 获得围绕给定值的随机偏差

javascript - 在比较昂贵的 JavaScript 中合并数组的最快方法是什么?

javascript - 在 javascript 中使用搜索并替换为正则表达式

javascript - Chrome.webRequest API - requestBody 始终未定义

python - 将另一个 numpy 数组作为数组附加到 numpy 数组,而不是它的元素

javascript - 如何将base13字符串转换为base64

javascript - 任务 "Regarding"字段未从 CRM 2013 中的子网格填充

javascript - JS 中能否识别位于另一个 div 顶部的 div 的点击?

ruby - 使用 excel vlookup 等键值对将键数组连接到哈希

arrays - Powershell数组长度