js中数组排序

本文介绍了JavaScript中数组排序的基础知识及高级用法,包括默认排序方式、自定义排序规则及中文字符串排序方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

js中数组排序

   1、js中数组的排序,js中的自带排序方法 sort();我们一般知道代码代码如下

var array=[0,1,2,3,25,3,1];
array.sort();
foreach(var i in array)
{
alert(i.toString());
}
其实上面我们的排序是按照元素的ASCLL编码排序的;

2、sort()方法的深入,自定义排序方法

 其实sort()方法支持我们按照自己的规则排序的。

使用格式:arrayObj.sort(sortfunction)

arrayObj 需要排序的数组

sortfunction 自己的排序规则;函数类型

例子:

function sortNumber(a,b)
{
return a - b
}
var array=[0,1,2,3,25,3,1];
array.sort(sortNumber);

自定义的排序方法将返回元素的顺序号,0两元素相等,1第一个大于第二个,-1第一个小于第二个(我们可以安照自己的需求定义满足自己的排序规则)

3、扩展如果数组的元素是汉字型的字符串则怎样排序

    如果使用默认的排序,sort();按照编码排序,得到的结果发现没有明显的排序规律(是大家不能接受)

  排序汉字的规则方法:

stringObject.localeCompare(target)
localeCompare方法

说明比较结果的数字。如果 stringObject 小于 target,则 localeCompare() 返回小于 0 的数。如果 stringObject 大于 target,则该方法返回大于 0 的数。如果两个字符串相等,或根据本地排序规则没有区别,该方法返回 0。

方法注意:localeCompare() 方法提供的比较字符串的方法,考虑了默认的本地排序规则。

在中文操作系统下的排序规则  英文字母,汉字的首字母(A、B~~Z)(这种排序大家都满意)

代码:

function sortNumber(a,b)
{
return a.localeCompare(b);
}

var array=["a","我们","都爱","分享","编程","乐趣"];

array.sort(sortNumber); 







  

  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值