Array类型-sort()方法理解

在默认情况下,sort()方法会调用每个数组的toString()转型方法,然后比较得到的字符串,以确定如何排序。即使数组中的每一项都是数值,sort()方法比较的也是字符串。
exp:

 var values=[0,1,5,10,15];
 values.sort();
 alert(values);//0,1,10,15,5

延伸1:sort(compare)的升序方法。

function compare(value,value2){
if(value1<value2)
{ return -1; } 
else if(value1>value2)
{ return 1; } 
else{ return 0; }
}
var values= [0,1,5,10,15];
values.sort(compare);
alert(values);//0,1,5,10,15

比较函数接收两个参数,如果第一个参数应该位于第二个之前则返回一个负数,如果两个参数相等则返回0;如果第一个参数应该位于第二个之后则返回一个正数。

延伸2:sort(compare)的降序方法。

function compare(value,value2){
if(value1<value2)
{ return 1; } 
else if(value1>value2)
{ return -1; } 
else{ return 0; }
}
var values= [0,1,5,10,15];
values.sort(compare);
alert(values);//15,10,5,1,0

方法与第一种方法类似,只不过在compare比较函数,if语句中使return结果取反。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,270评论 0 4
  • 本章内容 使用对象 创建并操作数组 理解基本的 JavaScript 类型 使用基本类型和基本包装类型 引用类型的...
    闷油瓶小张阅读 697评论 0 0
  • PHP常用函数大全 usleep() 函数延迟代码执行若干微秒。 unpack() 函数从二进制字符串对数据进行解...
    上街买菜丶迷倒老太阅读 1,382评论 0 20
  • 9月7日,为进一步助推全州精神文明创建工作,落实全州汽车交通安全工作,提升全州交通运输部门安全防范意识,州...
    坏少ye尕藏阅读 262评论 0 1
  • 小王子说,所有的大人都曾经是小孩,虽然,只有少数的人记得。我想说,28岁的你,也请记得17岁时灿烂的自己和光荣的梦...
    沐香阅读 629评论 11 8