本文主要为大家分享一篇实例详解sort()函数的原理和使用方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧,希望能帮助到大家。

sort()方法就是对数组按照一定的条件进行排序。

在不带参数的情况下sort()方法默认会将数组元素当作string类型来升序排序,根据它们的unicode码从小到大依次排列.

如果想按照自己的条件进行排序,需要传一个比较函数。

如下:

var arr = ['a','c','b'];
console.log(arr.sort());

输出的值为


我在javascript的红皮书上看到一个例子觉得非常好:

我们先创建一个比较函数:

function createComparisonFunction(propertyName) {
     return function (object1,object2) {
         var value1 = object1[propertyName];
         var value2 = object2[propertyName];
         return value2 - value1;}
};

说明一下这value2-value1是降序排序,如果是value1-value2则是升序排序

定义一个数组:

var data = [
   {name:"ahang",age:28},
   {name:"cao",age:29},
   {name:"bang",age:30},
   {name:"diu",age:40}
];
console.log(data.sort(createComparisonFunction("age")));

相关

实例详解sort()函数的原理和使用方法