admin 管理员组

文章数量: 1184232


2024年4月13日发(作者:into临时表)

js数组sort排序算法

JavaScript中的sort()方法是一种常用的排序算法,它可以对数组进行

排序,无论是升序还是降序。sort()可以接受一个可选的回调函数作为

参数,用于定义排序规则。如果没有传入回调函数,sort()默认根据

Unicode编码对元素进行排序。如果传入回调函数,则根据回调函数

的定义进行排序。

sort()方法的用法很简单,只需要在要排序的数组上调用sort()即可。

例如:

var arr = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5];

();

上面的代码会将数组arr的元素按照Unicode编码顺序进行排序,结

果为:

[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]

如果需要升序排序,可以传入一个回调函数来定义排序规则。例如:

var arr = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5];

(function(a, b) {

return a - b;

});

上面的代码将数组arr按照升序进行排序,结果为:

[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]

如果需要降序排序,则可以将回调函数中的a和b对调,例如:

var arr = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5];

(function(a, b) {

return b - a;

});

上面的代码将数组arr按照降序进行排序,结果为:

[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]

需要注意的是,sort()方法会修改原数组。如果需要保留原数组不被改

变,可以在排序之前将原数组复制一份,例如:

var arr = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5];

var arrCopy = ();

();

上面的代码将数组arr复制一份,并将复制的数组进行排序,原数组

arr不会被改变。

总之,JavaScript中的sort()方法是一种常用的排序算法,可以对数组

进行排序,并且非常灵活,可以根据需要定义不同的排序规则。


本文标签: 排序 数组 进行 回调 函数