javascript 数组排序函数sort和reverse使用介绍

 更新时间:2013年11月21日 11:48:23   作者:  
reverse方法将一个Array对象中的元素位置进行反转,sort方法返回一个元素已经进行了排序的 Array 对象,下面为大家介绍下
首先我们先说一下reverse方法。

reverse 方法将一个 Array 对象中的元素位置进行反转。在执行过程中,这个方法并不会创建一个新的 Array 对象。

例如:
复制代码 代码如下:

var array1 = ['a','cc','bb','hello',false,0,3];
var array2 = [3,5,2,1,7,9,10,13];
array1.reverse();
array2.reverse();
alert(array1);
alert(array2);

如果数组中只包含数字,那么数字将降序排列,如果数组中还包含其他类型,就将数组反转并返回数组。

sort 方法

返回一个元素已经进行了排序的 Array 对象。
复制代码 代码如下:

arrayobj.sort(sortfunction)

参数

arrayObj

必选项。任意 Array 对象。

sortFunction

可选项。是用来确定元素顺序的函数的名称。如果这个参数被省略,那么元素将按照 ASCII 字符顺序进行升序排列。

sort 方法将 Array 对象进行适当的排序;在执行过程中并不会创建新的 Array 对象。

如果为 sortfunction 参数提供了一个函数,那么该函数必须返回下列值之一:

负值,如果所传递的第一个参数比第二个参数小。
零,如果两个参数相等。
正值,如果第一个参数比第二个参数大。

例1:()
复制代码 代码如下:

var a, l; // 声明变量。
a = ["X" ,"y" ,"d", "Z", "v","m","r",false,0];
l = a.sort(); // 排序数组。
alert(l); // 返回排序的数组。

这个例子里没有传入比较函数那么元素将按照 ASCII 字符顺序进行升序排列,另外这个数组中包含了多种类型的数据,所以即使传入了比较函数,它依然按照ASCII 字符顺序进行升序排列。

例如
复制代码 代码如下:

var a, l; // 声明变量。
a = ["X" ,"y" ,"d", "Z", "v","m","r",false,0];
l = a.sort(); // 排序数组。
alert(l); // 返回排序的数组。
ll = a.sort(compack);
alert(ll);//返回与上面一样
function compack(a,b){
return a-b;
}

当我们需要对数字排序的时候可以使用sort方法,只要给它传入一个比较函数就可以轻松的升序和降序。

升序:
复制代码 代码如下:

var a, l; // 声明变量。
a = [6,8,9,5.6,12,17,90];
l = a.sort(compack); // 排序数组。
alert(l); // 返回排序的数组。

function compack(a,b){
return a-b;
}

降序:
复制代码 代码如下:

var a, l; // 声明变量。
a = [6,8,9,5.6,12,17,90];
l = a.sort(compack); // 排序数组。
alert(l); // 返回排序的数组。

function compack(a,b){
return b-a;
}

在比较函数里升序返回a-b,降序返回b-a。

相关文章

  • JavaScript惰性求值的一种实现方法示例

    JavaScript惰性求值的一种实现方法示例

    这篇文章主要给大家介绍了关于JavaScript惰性求值的一种实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • javascript另类方法实现htmlencode()与htmldecode()函数实例分析

    javascript另类方法实现htmlencode()与htmldecode()函数实例分析

    这篇文章主要介绍了javascript另类方法实现htmlencode()与htmldecode()函数,结合实例形式分析了javascript字符编码与解码操作的相关技巧,需要的朋友可以参考下
    2016-11-11
  • JavaScript中关于递归与回溯的实例详解

    JavaScript中关于递归与回溯的实例详解

    这篇文章主要将为大家介绍一下JavaScript中递归与回溯的原理及使用,文中通过一些例题进行了详细介绍,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-07-07
  • JavaScript中7种位运算符在实战的妙用

    JavaScript中7种位运算符在实战的妙用

    位运算是在数字底层(即表示数字的 32 个数位)进行运算的,下面这篇文章主要给大家介绍了关于JavaScript中7种位运算符在实战的妙用,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • 微信小程序vant 输入框问题处理方案

    微信小程序vant 输入框问题处理方案

    这篇文章主要介绍了微信小程序vant输入框问题,本文给大家分享完美解决方案,结合实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • 5款Javascript颜色选择器

    5款Javascript颜色选择器

    5款JavaScript颜色选择器(含jQuery插件)。
    2009-10-10
  • 游戏人文件夹程序 ver 4.03

    游戏人文件夹程序 ver 4.03

    游戏人文件夹程序 ver 4.03...
    2006-07-07
  • JS实现网页自动刷新脚本的方法

    JS实现网页自动刷新脚本的方法

    要自动刷新网页,你可以使用JavaScript脚本来实现,下面这篇文章主要给大家介绍了关于JS实现网页自动刷新脚本的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • bootstrap的常用组件和栅格式布局详解

    bootstrap的常用组件和栅格式布局详解

    Bootstrap 是最受欢迎的 HTML、CSS 和 JS 框架,用于开发响应式布局、移动设备优先的 WEB 项目,本文介绍了bootstrap的常用组件和栅格式布局详解,有兴趣的可以了解一下
    2017-05-05
  • element-ui组件输入框之放大镜搜索图标问题

    element-ui组件输入框之放大镜搜索图标问题

    这篇文章主要介绍了element-ui组件输入框之放大镜(搜索图标)的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-11-11

最新评论