`
kanpiaoxue
  • 浏览: 1789907 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

javascript数组partition的分隔功能

 
阅读更多

在JavaScript中会遇到想将大的数组切割为小数组的情况。

 

function partition(arr, length) {
    var result = [];
    for (var i = 0, j = arr.length; i < j; i++) {
        if (i % length === 0){
            result.push([]);
        }
        result[result.length - 1].push(arr[i]);
    }
    return result;
};


var arr = [];
for(var i = 0; i<100;i++){
    arr.push(i);
}


console.log('length:7',partition(arr,7));
/*
0:(7) [0, 1, 2, 3, 4, 5, 6]
1:(7) [7, 8, 9, 10, 11, 12, 13]
2:(7) [14, 15, 16, 17, 18, 19, 20]
3:(7) [21, 22, 23, 24, 25, 26, 27]
4:(7) [28, 29, 30, 31, 32, 33, 34]
5:(7) [35, 36, 37, 38, 39, 40, 41]
6:(7) [42, 43, 44, 45, 46, 47, 48]
7:(7) [49, 50, 51, 52, 53, 54, 55]
8:(7) [56, 57, 58, 59, 60, 61, 62]
9:(7) [63, 64, 65, 66, 67, 68, 69]
10:(7) [70, 71, 72, 73, 74, 75, 76]
11:(7) [77, 78, 79, 80, 81, 82, 83]
12:(7) [84, 85, 86, 87, 88, 89, 90]
13:(7) [91, 92, 93, 94, 95, 96, 97]
14:(2) [98, 99]
*/

console.log('length:7',partition(arr,11));
/*
0:(11) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
1:(11) [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21]
2:(11) [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32]
3:(11) [33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43]
4:(11) [44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54]
5:(11) [55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65]
6:(11) [66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76]
7:(11) [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87]
8:(11) [88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98]
9:[99]
*/

 

 

分享到:
评论

相关推荐

    js算法中的排序、数组去重详细概述

    在JavaScript中,处理数组的数据操作是常见的任务,其中包括排序和去重。本文将详细介绍这两种操作的实现方法。 ### 一、数组排序 在JavaScript中,数组对象提供了一个内置的方法`sort()`,用于对数组进行排序。...

    js代码-JavaScript 快速排序

    如果你需要对一个JavaScript数组进行排序,只需将数组传递给`quickSort`函数,它将返回一个已排序的新数组,而不会改变原始数组。 快速排序的平均时间复杂度为O(n log n),但在最坏情况下(输入数组已经部分排序或...

    js代码-15.5 快速排序

    它的基本思想是分治法(Divide and Conquer),通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,然后分别对这两部分记录继续进行排序,以达到整个序列有序的目标。...

    js代码-快速排序算法

    `partition`函数通过遍历数组并交换元素,确保所有小于基准的元素都在基准的左边。最后,`quickSort`函数对基准左右两侧的子数组进行递归调用,完成排序。 `README.txt`文件可能包含了关于这个代码的简短说明,例如...

    Quicksort:快速排序可视化探索

    在JavaScript中实现快速排序,我们可以从一个数组的任意位置选择一个元素作为“基准”(pivot),然后将数组分为两个子集:一个包含所有小于基准的元素,另一个包含所有大于或等于基准的元素。这个过程称为分区操作...

    深入理解JS实现快速排序和去重

    在JavaScript中,数组去重是一个常见的问题,目的是从数组中删除重复的元素。去重的算法有很多种,包括但不限于以下几种: 1. 使用一个新数组遍历原数组,将不重复的元素添加到新数组中。这种方法简单直观,但效率...

    json 报表开发

    4. **数据格式化**:`fmt`数组定义了每列数据如何显示,例如数值格式化(`0,0`代表带有逗号分隔的整数)和货币格式(`¥0,0`)。 5. **操作定义**:`operation`对象可能用于定义报表上的操作,如`p`、`qty`和`...

    js代码-排序算法之快速排序

    在JavaScript中,你可以通过调用`quickSort`函数并传入需要排序的数组来实现排序,例如: ```javascript const unsortedArray = [5, 3, 8, 1, 2, 9, 4, 7, 6]; const sortedArray = quickSort(unsortedArray); ...

Global site tag (gtag.js) - Google Analytics