`
alienjun
  • 浏览: 11706 次
  • 性别: Icon_minigender_1
  • 来自: 广西
最近访客 更多访客>>
社区版块
存档分类
最新评论

JS数组排序

    博客分类:
  • JS
阅读更多
用数组的排序:sort()方法. 但sort()方法本身是按ASCII字符代码从小到大排列的.所以说,如果是数字的话,会出现下面这种情况:
var arr = [3, 32, 3, 5];
arr.sort();
alert(arr.toString());//输出:2,3,32,5

但是: sort()方法可以接收一个参数,就是一个比较函数;也就是说,可以自己写个比较函数;这样的话,不管要排序的数组里的值是什么类型的,都可以排序,前提是自己写的方法够好.如下:
function compare(str1, str2){
    if(str1  str2){
        return 1;
    }else{
        return 0;
    }
}

此函数和不传递参数时的功能一样.都是从小到大排列,而且是按字符串来比较的.但如果想要从大到小排列,只需要把返回-1 和 1 的判断换一下就OK了.但两者相等的时候必须是返回0;比较函数的两个参数是不用我们写的,sort()会自动在比较的时候传进去.
上面的判断其实和String类的localCompare()方法是一样的.所以可以直接写成这样:
function compare(str1, str2){
    return str1.localCompare(str2);//从小到大.
  //return -str1.localCompare(str2);//从大到小.
}

上面的例子.给数字排序:可以自己写个函数,按数字来比较:
function compareInt(int1, int2){
    var iNum1 = parseInt(int1);//强制转换成int 型;
    var iNum2 = parseInt(int2);
    if(iNum1  iNum2){
        return 1;
    }else{
        return 0;
    }
}

这时候:
var arr = [3, 32, 2, 5];
arr.sort(compareint);
alert(arr.toString());//输出:2,3,5,32
reverse()方法:
此方法用来将数组中元素的顺序倒转;所以:如果一数组已经按升序排好,只需要对数组执行:reverse() .就可以变成降序.上例:arr.reverse();alert(arr.toString());//输出:32,5,3,2
分享到:
评论

相关推荐

    js数组排序

    js数组排序

    Js数组排序函数sort()介绍

    JavaScript实现多维数组、对象数组排序,其实用的就是原生的sort()方法,用于对数组的元素进行排序。 sort() 方法用于对数组的元素进行排序。语法如下: arrayObject.sort(sortby) 返回值为对数组的引用。请注意,...

    关于JavaScript的数组排序

    在学习JavaScript中,做的笔记,关于数组排序的,具体是按字母升序排序,按数字升序或降序排序。如有需要,请自行下载。

    javascript 数组排序

    通过阅读《2011-02-14-js-sort.html》这篇博文,你将能了解更多关于JavaScript数组排序的细节,包括一些高级技巧和常见陷阱。同时,CSS文件可能是用来美化博客页面样式的,但在这个讨论中并不直接相关。 总之,理解...

    排序函数(数字或字符串数组排序)

    为普通数组和对象数组排序,对象数组排序时,可指定排序所依据的对象属性,汉字将以汉语拼音为序。

    JavaScript 数组排序 比较器 示例代码

    JavaScript(简称JS)是一种轻量级、解释型、动态类型的脚本语言,主要用于网页前端开发,但也被广泛用于服务器端和移动应用开发。它最初由Netscape公司的Brendan Eich在1995年为Netscape Navigator浏览器设计,目的...

    17 - 数组排序.rar

    在这个“17 - 数组排序.rar”压缩包文件中,很可能是包含了关于JavaScript数组排序方法的详细讲解和示例代码。 JavaScript提供了内置的`Array.prototype.sort()`方法来对数组进行排序。这个方法接受一个可选的比较...

    js json数组排序.txt

    js实现json数组排序。 可对指定的字段进行排序,简单实用

    JavaScript数组排序的六种常见算法总结

    在JavaScript中,数组排序是常见的操作,涉及到多种不同的算法,每种算法有着不同的效率和适用场景。本文将总结六种常见的排序算法,并提供相应的代码示例。 首先,我们来看看希尔排序(Shell Sort),这是一种改进...

    纯js对象数组排序汇总处理类

    js中包含一个类,该类的主要功能是:对对象数组进行多字段排序和汇总。调用方法类似: 1、排序 :new SPArraySortHelper(数据, 分组排序字段, 汇总字段).sort() 2、汇总:new SPArraySortHelper(数据, 分组排序字段,...

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

    本文实例总结了JS数组排序技巧。分享给大家供大家参考,具体如下: ① 冒泡排序 bubbleSort:function(array){ var i = 0, len = array.length, j, d; for(; i<len; i++){ for(j=0; j<len; j++){ if(array[i] ...

    js对象数组按属性快速排序

    按所推荐的程序在IE下跑了下,的确,排序耗时很小。 代码如下: [removed] /* * 洗牌 */ function getRandomPlayCard(m){ var array1=new Array(m); for(var i=0;i<m;i++){ var rnd=Math.floor(Math.random()*(i+0...

    无序数组排序

    在IT领域,数组排序是一个基础且重要的主题,尤其在数据结构和算法的学习中。无序数组排序是指对一个没有特定顺序的元素集合进行重新排列,使其按照某种规则(如升序或降序)呈现有序状态。这个过程涉及到多种排序...

    JavaScript对象数组排序函数及六个用法

    为了应对不同场景下的排序需求,本文将介绍一个自定义的JavaScript函数,该函数支持对数组或对象进行排序,并且能够根据数组或对象中嵌套的任意深度的子键进行排序。以下是对该函数及其使用方法的详细解析。 函数...

    javascript 数组排序函数

    JavaScript数组排序函数是JavaScript编程语言中用于对数组元素进行排序的标准方法。数组的sort方法可以对数组中的元素进行排序,其默认排序行为是按照字符串的Unicode码点顺序进行排序,也就是说,它会将数组元素...

    javascript数组排序汇总

    JavaScript数组排序汇总主要涉及到四种经典的排序算法:冒泡排序、快速排序、插入排序和希尔排序。这些算法在处理数组时有着不同的效率和应用场景。 1. **冒泡排序**(Bubble Sort): 冒泡排序是一种简单的排序...

    JS数组排序方法实例分析

    冒泡排序与选择排序都是基础的数组排序算法。以下是对这两种排序方法在JavaScript中的具体实现和...通过理解上述JavaScript数组排序及其他相关算法和技巧,读者可以更高效地编写JavaScript代码,解决各种数据处理问题。

    JavaScript应用实例-数组映射排序.js

    JavaScript应用实例-数组映射排序.js

    随机数排序_20个随机数_数组排序_源码

    以上就是针对"随机数排序_20个随机数_数组排序_源码"这一主题的关键知识点,涵盖了随机数生成、数组操作、排序算法及其性能、源码分析等方面。理解这些概念对于提升编程技能和解决问题能力非常有帮助。

Global site tag (gtag.js) - Google Analytics