JS面试题:JS中自带的排序sort方法

439 阅读1分钟

1. sort字母排序

sort默认的排序方式为字母排序,根据二十六个字母依次排列,单词之间比较,则先比较第一个字母,如果第一个字母相同则比较第二个字母,以此类推。

   var arr = ["za","zb","a","b","xc","xa"];
   arr.sort();
   console.log(arr);
  // 运行结果:["a", "b", "xa", "xc", "za", "zb"]

2. sort数字排序

sort()中参数可以是函数,可以升序和降序输出结果。

  var array = [100,10,50,800,320,34,53];
    array.sort(function(a,b){
        //a-b升序,b-a降序
        return b-a;
    });
    console.log(array);
  //运行结果:[800, 320, 100, 53, 50, 34, 10]
 

注意: 其中a,b都是表示这个数组里面的元素,如果是a-b则表示升序,如果是b-a则表示降序。

3. sort数组对象排序

      var obj = [
        { name: 'lucy', num: 400 },
        { name: 'nancy', num: 110 },
        { name: 'maria', num: 200 }
      ]
      obj.sort(function (a, b) {
        return a.num - b.num
      })
      console.log(obj)