js中sort()排序的原理

来源:互联网 发布:淘宝卖家装修教程 编辑:程序博客网 时间:2024/05/16 17:47

众所周知sort()可以实现排序,不仅是数字,字符串也可以,那么相比读过sort()源码的同学不会很多,今天给大家讲解一下原理:

从小到大排序

<script type="text/javascript">

var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"
document.write(arr.sort(function(a, b)
{
return a - b
}))

</script>

从大到小的排序

<script type="text/javascript">

var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"
document.write(arr.sort(function(a, b)
{
return a - b
}))

</script>

看下面的代码

window.onload=function(){
        var arr=[2,55,55,1,75,3,9,35,70,166,432,678,32,98];
        var arr2=["George","John","Thomas","James","Adrew","Martin"];
        function arrsort(a,b){
            return a-b;
            }
        console.log(arr.sort(arrsort));  //数字排序需要函数,如果要从大排到小,就return b-a;
        console.log(arr2.sort());  //字母不需要
}

1 0
原创粉丝点击