JavaScript的数组.sort方法 为何可以通过一个匿名方法实现排序

看懂这个过程,就明白JavaScript的数组sort方法是什么意思了。

<script type="text/javascript">
    var numes = [10, 20, 30, 45, 44, 78, 79, 88, 100];
    //排序原理
    function mySort(array, fn) {//fn是一个方法(类似委托)

        for (var i = 0; i < array.length; i++) {
            for (var j = 0; j < array.length - i - 1; j++) {
                if (fn(array[j], array[j + 1]) > 0) {//引入一个方法代替判断条件。
                    var temp = array[j];
                    array[j] = array[j + 1];
                    array[j + 1] = temp;
                }
            }
            
        }
        return array;
    }
    //调用
    //升序
    alert(mySort(numes, function (x, y) { return x - y; }));

    //降序
    alert(mySort(numes, function (x, y) { return y - x; }));

</script>
发布了55 篇原创文章 · 获赞 4 · 访问量 1408

猜你喜欢

转载自blog.csdn.net/BowenXu11/article/details/105029260