JavaScript sort() 函数

需求:对数组元素进行排序,每个元素是一个数字

问题及解决思路:当我们调用此方法对数组进行排序时,默认对每个元素的字符Ascll码排序,如

2,14,12 的排序结果是 12, 14, 2,有时这不符合我们的需求,我们需要的是让每个元素按自然数排序,解决方法是写一个模板函数(此函数的用法和功能与c/c++中sort的模板函数如出一辙)

示例:

var merge = function(A) {
    // 模板函数
    function sequence(a,b) {
        if (a < b) {
            return -1;
        } else if (a > b) {
            return 1;
        } else {
            return 0;
        }
    }
    return A.sort(sequence);
};

console.log(merge([1,14,12]));

 

posted @ 2020-08-28 16:35  JonnyOu1012  阅读(33)  评论(0)    收藏  举报