美文网首页
js中sort方法的使用

js中sort方法的使用

作者: SmallTwo | 来源:发表于2017-04-16 10:15 被阅读0次
/**
@param {function} [compareFn]
@return {Array.<T>}
*/
Array.prototype.sort = function(compareFn) {}
/**
      * Sorts an array.
      * @param compareFn The name of the function used to determine the order of the elements. If omitted, the elements are sorted in ascending, ASCII character order.
      */
    sort(compareFn?: (a: T, b: T) => number): T[];

可以看到该函数的参数是一个函数如果不传入参数或者参数不是一个函数那么该函数最多可以升序排列10个以内的数

  var arr = [2, 412, 3213, 22, 122,222,222,2277,22898,22423432,2,9];
    arr.sort();

传入的是两个参数返回值是number类型的函数

 arr.sort(function (a, b) {
        return a - b;
    });

如果 return a- b就是求升序:因为 如果a-b大于0那么交换a和b的位置因此为升序
如果return b-a那就是降序:因为如果b-a大于0那么交换a和b的位置因此是降序
如果返回值是例如 return 1那么仅仅只是将数组进行了逆序排列相当于 reverse
如果返回值是如果 return <=0的数那么保持不变

函数内部会多次进行比较可能使用了冒泡插入等排序规则

二维数组的比较

    var arr = [
        {name:'小二',age:18},
        {name:'小222',age:13},
        {name:'小33',age:23},
    ];

    arr.sort(function (a,b) {
       // 以年龄排序
        return parseFloat(a.age) - parseFloat(b.age);
    });
    console.log(arr);

// 比较汉字字符串排序用localcompare函数

  var arr = [
        {name: '小二', age: 18},
        {name: '小222', age: 13},
        {name: '小33', age: 23},
    ];
        arr.sort(function (a, b) {
        return a.name.localeCompare(b.name);
    });
    console.log(arr);

相关文章

  • js中sort方法的使用

    可以看到该函数的参数是一个函数如果不传入参数或者参数不是一个函数那么该函数最多可以升序排列10个以内的数 传入的是...

  • JavaScript学习--数组排序以及最大值、最小值问题

    1.数字排序在js中默认是使用 sort() 函数按照字符串顺序对值进行排序。但是,sort() 方法在对数值排序...

  • 根据数组中的某一个对象进行排序

    arr.sort(this.sortId) //数组 使用sort方法, vue中 sort括号里面的方法不要...

  • 比较函数compare

    javascript中数组的sort()方法原理研究 js中compare 函数,如果

  • JS中sort()方法原理及使用

    定义和用法 sort() 方法用于对数组的元素进行排序,并返回数组。 默认排序顺序是根据字符串UniCode码。因...

  • JS中sort()方法原理和使用

    sort() 方法用于对数组的元素进行排序,并返回数组。默认排序顺序是根据字符串UniCode码。因为排序是按照字...

  • MongoDB 排序

    MongoDB sort()方法 在MongoDB中使用使用sort()方法对数据进行排序,sort()方法可以通...

  • MongoDB Triks

    1. MongoDB sort()方法 在MongoDB中使用使用sort()方法对数据进行排序,sort()方法...

  • js sort()升降序

    js的sort()方法 说明 如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按...

  • Python基础(11) - 列表的排序

    对列表排序的方法 使用a.sort()方法 使用a = sorted(b)方法 列表Sort方法与sorted方法...

网友评论

      本文标题:js中sort方法的使用

      本文链接:https://www.haomeiwen.com/subject/blqaattx.html