`

JavaScript数组的分割和排序

阅读更多
1. 数组分割:array.slice(start, end)

slice()是用来截取数组中的一部分,用它来复制数组,如果省略了end参数,则切分的数组包含从start开始到数组结束的所有元素。

现在要用它来复制数组:var newArray=oldArray.slice(0);
(1). 如果 start 为负,将它作为 length + start处理,此处 length 为数组的长度,比如a.slice(-3,4),相当于a.slice(2,4)。

(2). 如果 end 为负,就将它作为 length + end 处理,此处 length 为数组的长度,比如a.slice(0,-1)。

(3). 如果省略 end ,那么 slice 方法将一直复制到源数组结尾,比如a.slice(1)。如果 end 出现在 start 之前,不复制任何元素到新数组中,比如a.slice(4,3)。

(4).对于字符串,也有slice(start,end)方法。
示例:


/**
 *将数组分割成新的数组[二维数组]
 *@param myArray 需要分割的数组
 *@param size    分割每个子数组的长度
 */
function getNewArray(myArray,size){
  var len=parseInt(myArray.length/size);
  var remain=myArray.length%size;
  var my_array=[],count=1,sot=remain>0?len+1:len; 
  for ( var f = 1; f <=sot; f++) {
    var start=size*(f-1);
    var end=(f>len)?((f-1)*size+remain):f*size;
    var mylocates=myArray.slice(start,end);
    my_array.push(mylocates);
  }
 return my_array;
}

2.数组排序:array.sort()
(1)、默认的sort()按字符编码排序的:

var testArray=[3,324,5345,6546,134,5654,665];
 testArray.sort();
 alert(testArray.join(","));

(2)、按大小排序:
var testArray=[3,324,5345,6546,134,5654,665];
testArray.sort(function(a,b){return a-b;});
alert(testArray.join(","));

//说明:alert(arr.sort(function(left,right){return left>right?-1:1}))   ////这里,sort方法通过参数函数的返回值 1或者-1来决定是顺排还是倒排
(3)、对多维数组的排序:
var arr=[
              [2,1,55,4],
              [5,3,22,3],
              [1,2,77,2],
              [9,4,33,5],
           ];                 
alert("默认按第一列排\n"+arr.sort().join("\n"));
alert("现在按第三列排\n"+arr.sort(function(left,right){return left[2]>right[2]?1:-1}).join("\n"));
alert("现在按第三列倒排\n"+arr.sort(function(left,right){return left[2]>right[2]?-1:1}).join("\n"));

分享到:
评论

相关推荐

    Javascript数组及其操作

    Javascript 数组是一种基本的数据结构,用于存储和操作多个值。数组是一种复杂的数据类型,可以存储不同的数据类型,如数字、字符串、对象等。 创建数组 在 Javascript 中,可以使用三种方式创建数组: 1. 单纯...

    通过javascript实现归并排序.rar

    在这个示例中,mergeSort 函数是归并排序的主函数,它负责将数组分割成更小的子数组,并递归地对这些子数组进行排序。merge 函数则负责将两个已排序的子数组合并成一个有序数组。 归并排序的时间复杂度为O(n log n)...

    JavaScript中数组常见操作技巧

    ### JavaScript中数组常见操作技巧 ...通过以上内容,可以看出JavaScript中数组操作技巧包含数组的创建、遍历、读写、排序以及数组与字符串处理等多方面知识。掌握这些技巧对于进行高效的前端开发非常有帮助。

    JavaScript数组常用操作技巧汇总

    这篇文章将汇总JavaScript数组的一些常用操作技巧,帮助开发者更好地理解和利用数组功能解决问题。 ### 一、数组的性质 在JavaScript中,数组本质上是特殊的对象,其属性是通过偏移量的索引来表示的。虽然我们可以...

    深入了解javascript 数组的sort方法

    JavaScript数组的sort方法是JavaScript语言提供的对数组元素进行排序的一种方法。sort方法接受一个可选的排序函数作为参数,这个排序函数决定了元素如何比较大小。开发者不需要关心排序的底层实现,只需提供一个比较...

    JavaScript数组全解密

    JavaScript数组的API丰富多样,包括数组的遍历方法(如`forEach`、`map`、`filter`)、查找方法(如`indexOf`、`find`、`findIndex`)、修改方法(如`push`、`pop`、`shift`、`unshift`)、排序方法(如`sort`)、...

    JavaScript实现的动态排序分页

    在IT行业中,动态排序和分页是Web应用中常见的功能,尤其在数据量庞大的表格展示时更为重要。本文将深入探讨如何使用JavaScript实现这一功能。 首先,动态排序是指用户可以根据需求点击表格的列名,系统会即时根据...

    js 数组工具类 ArrayUtil

    在JavaScript中,数组是一种常用的数据结构,用于存储和操作一系列有序的数据。ArrayUtil是一个实用的JavaScript...此外,分析源码还可以帮助我们理解面向对象编程、函数式编程以及JavaScript数组操作的内部工作原理。

    javascript数组常用方法汇总

    以下是对标题和描述中提到的一些JavaScript数组常用方法的详细说明: 1. **join()** 方法:`Array.join()` 方法将数组的所有元素转换为字符串,并用指定的分隔符连接在一起。如果不提供分隔符,它默认使用逗号。...

    按照字母顺序进行排序

    2. 外部排序:当数据无法全部加载到内存时,可以采用外部排序,将数据分割成小块在磁盘上进行排序,然后合并。 3. 并行排序:利用多核CPU的并行计算能力,将排序任务分解为多个子任务并行执行。 总结,按照字母顺序...

    JS数组排序技巧汇总(冒泡、sort、快速、希尔等排序)

    JavaScript中的数组排序是...冒泡排序和插入排序因其简单易懂,在数组规模较小时具有一定的应用,快速排序和希尔排序则是处理大数据集时的首选。在实际开发中,选择合适的排序算法可以有效提高程序的执行效率和性能。

    JS数组扁平化、去重、排序操作实例详解

    在JavaScript中,数组的操作是日常开发中非常常见的一类任务,包括数组的扁平化、去重和排序。本文将详细讲解这些操作的实现方法。 首先,我们关注数组的扁平化。数组扁平化是指将一个多维数组转化为一维数组,即...

    09 数组及字符串实验

    1. **数组操作**:包括初始化数组、遍历数组、修改数组元素、查找和排序等。例如,你可以实现一个冒泡排序算法来对数组中的元素进行排序。 2. **字符串基础**:理解字符串的基本操作,如字符串长度计算、字符查找、...

    js获取汉字首字母并排序

    - 对于每个字母,创建一个对象`curr`,其中包含字母本身和一个空数组`data`。 - 再次使用`$.each()`遍历输入数组`arr`,根据条件判断是否将元素添加到`curr.data`。 - 如果`empty`为真或`curr.data`有元素,则将`...

    js读取cvs,并转化成数组,前端处理cvs文件

    读取到CSV文本后,我们需要将其转换为JavaScript数组。这通常通过使用`split()`函数分割行,然后对每一行再用`split()`按逗号分隔,生成子数组。例如: ```javascript const rows = csvContent.split('\n'); ...

    ECMAScript数组

    通过以上介绍,我们可以了解到ECMAScript中的数组提供了丰富的操作方法,这些方法使得在JavaScript中处理数组变得非常灵活和强大。掌握了这些基本概念和技术,可以更加高效地处理数据和逻辑问题。

    javascript中数组array及string的方法总结

    JavaScript数组自带了很多方法,这些方法大致可以分为两类:会改变原数组的方法和不会改变原数组的方法。 1. 改变原数组的方法 - pop():移除数组的最后一个元素,并返回该元素。 - shift():移除数组的第一个...

    javascript中数组(Array)对象和字符串(String)对象的常用方法总结

    例如,数组对象还包含sort()方法用于排序,shift()和unshift()方法分别用于移除数组的第一个元素和在数组开头添加新元素等。字符串对象则有toLowerCase()和toUpperCase()方法用于将字符串转为小写或大写,以及其他...

    javascript 折半查找字符在数组中的位置(有序列表).docx

    ### JavaScript 折半查找字符在数组中的位置(有序列表) #### 概述 本文将详细介绍如何使用JavaScript实现折半查找算法来查找一个字符在有序数组中的位置。折半查找(也称为二分查找)是一种效率较高的查找算法,...

    JS实现归并排序,前端必会

    3. **性能优化**:对于大数据量的处理,归并排序优于冒泡排序和插入排序等简单排序算法。 总之,归并排序是JavaScript开发者必备的一种排序算法,理解并掌握它的原理和实现方法,能够提高在实际项目中的问题解决...

Global site tag (gtag.js) - Google Analytics