javascript中数组sort方法详解

在处理数组的时候,我们有时候需要对数组进行排序,排序的方法有很多种,但是最好最快的就是利用sort方法进行快速的排序。

我们来看一个例子:

 代码如下 复制代码

var arr1 = [6, 3, 4, 1, 2, 5, 7, 3, 0, 9, 8, 10];//这里有一个数字数组

arr1.sort(function(a,b){

return a-b;

});

这种方法是升序的排法,反之,

arr1.sort(function(a,b){

return b-a;

});

这样就是降序的排法。

按字母排序

 代码如下 复制代码

var arr = ['b','cc','abc','fzj','xij','acd','yab'];  
arr.sort();  
for (var i = 0; i < arr.length; i++) {  
    document.writeln(nameArr[i]);  
}  

结果:abc acd b cc fzj xij yab

Demo2数字排序,sort(prama)方法带参数

 代码如下 复制代码

//降序函数 
var desc = function(x,y)   
{   
    if (x > y)     
        return -1;  //返回一个小于0 的数即可 
    else       
        return 1;  //返回一个大于0 的数即可 
}   
//升序函数 
var asc = function(x,y)   
{   
    if (x > y)     
        return 1;  //返回一个大于0 的数即可 
    else           
        return -1;  //返回一个小于0 的数即可 

 
var arr2 = [4,6,4,2,7,9,0,1];   
arr2.sort(desc); //降序排序 
document.writeln(arr2);   
document.writeln("<br>");   
arr2.sort(asc); //升序排序 
document.writeln(arr2);  
 
结果:
9,7,6,4,4,2,1,0
0,1,2,4,4,6,7,9

 

Demo2的简单算法

 代码如下 复制代码

var arr2 = [4,6,4,2,7,9,0,1];   
arr2.sort(function(a,b){return a - b}); 
document.writeln(arr2);   
document.writeln("<br>");   
arr2.sort(function(a,b){return b - a}); 
document.writeln(arr2);  
 
结果:

0,1,2,4,4,6,7,9
9,7,6,4,4,2,1,0 

时间: 2024-09-27 11:55:39

javascript中数组sort方法详解的相关文章

JavaScript中break continue方法详解

break 语句用于跳出循环. continue 用于跳过循环中的一个迭代. Break 语句 我们已经在本教程稍早的章节中见到过 break 语句.它用于跳出 switch() 语句. break 语句可用于跳出循环. break 语句跳出循环后,会继续执行该循环之后的代码(如果有的话): for (i=0;i<10;i++)  {     if (i==3)     {         break;      }    x=x + "The number is " + i +

JavaScript中的依赖注入详解

 这篇文章主要介绍了JavaScript中的依赖注入详解,本文讲解了requirejs/AMD方法.反射(reflection)方法等内容,需要的朋友可以参考下     计算机编程的世界其实就是一个将简单的部分不断抽象,并将这些抽象组织起来的过程.JavaScript也不例外,在我们使用JavaScript编写应用时,我们是不是都会使用到别人编写的代码,例如一些著名的开源库或者框架.随着我们项目的增长,我们需要依赖的模块变得越来越多,这个时候,如何有效的组织这些模块就成了一个非常重要的问题.依赖

jquery 遍历数组 each 方法详解_jquery

JQuery拿取对象的方式 $('#id') :通过元素的id $('tagName') : 通过元素的标签名 $('tagName tagName') : 通过元素的标签名,eg: $('ul li') $('tagName#id): 通过元素的id和标签名 $(':checkbox'):拿取input的 type为checkbox'的所有元素: Eg: <input type="checkbox" name="appetizers" value="

JavaScript中的Promise使用详解

  这篇文章主要介绍了JavaScript中的Promise使用详解,promise对象是JS进阶学习中的重要知识点,需要的朋友可以参考下 许多的语言,为了将异步模式处理得更像平常的顺序,都包含一种有趣的方案库,它们被称之为promises,deferreds,或者futures.JavaScript的promises ,可以促进关注点分离,以代替紧密耦合的接口. 本文讲的是基于Promises/A 标准的JavaScript promises.[http://wiki.commonjs.org

Ruby中的钩子方法详解

  这篇文章主要介绍了Ruby中的钩子方法详解,本文讲解了什么是钩子方法.included.Devise中的 included.extended.ActiveRecord中的 extended.prepended.inherited等内容,需要的朋友可以参考下 Ruby的哲学理念是基于一个基本的要素,那就是让程序员快乐.Ruby非常注重程序员的快乐,并且也提供了许多不同的方法来实现它. 它的元编程能力能够让程序员编写在运行时动态生成的代码.它的线程功能使得程序员有一种优雅的的方式编写多线程代码.

JavaScript中的继承方式详解

 这篇文章主要介绍了JavaScript中的继承方式详解,本文讲解了js继承的概念.原型式继承与类式继承.原型链继承.类式继承.组合继承.原型式继承等内容,需要的朋友可以参考下     js继承的概念 js里常用的如下两种继承方式: 原型链继承(对象间的继承) 类式继承(构造函数间的继承) 由于js不像java那样是真正面向对象的语言,js是基于对象的,它没有类的概念.所以,要想实现继承,可以用js的原型prototype机制或者用apply和call方法去实现 在面向对象的语言中,我们使用类来

JavaScript中的函数模式详解

 这篇文章主要介绍了JavaScript中的函数模式详解,本文讲解了创建函数的语法.函数表达式.命名函数表达式.函数的声明.函数声明与表达式.函数的提升.即时函数模式等内容,需要的朋友可以参考下     JavaScript设计模式的作用是提高代码的重用性,可读性,使代码更容易的维护和扩展 在javascript中,函数是一类对象,这表示他可以作为参数传递给其他函数:此外,函数还可以提供作用域. 创建函数的语法 命名函数表达式 代码如下: //命名函数表达式 var add = function

JavaScript中 ES6 generator数据类型详解_javascript技巧

1. generator简介 generator 是ES6引入的新的数据类型, 看上去像一个函数,除了使用return返回, yield可以返回多次. generator 由function* 定义, (注意*号), 2. 示例 函数无法保存状态, 有时需要全局变量来保存数字: 2.1 'use strict'; function next_id(){ var id = 1; while(id<100){ yield id; id++; } return id; } // 测试: var x,

Javascript中数组sort和reverse用法分析_javascript技巧

本文实例讲述了Javascript中数组sort和reverse用法.分享给大家供大家参考.具体分析如下: sort() 方法用于对数组的元素进行排序. reverse()将数组中的元素逆序 首先我们来试试以下这段代码: 复制代码 代码如下: var values = [1, 0, 5, 15, 10]; values.reverse(); console.log(values); 输出结果会是什么呢: [ 10, 15, 5, 0, 1 ] reverse()也就是很简单的把数组倒过来而已,那