数组的排序

  • sort方法排序

1、默认升序

2、将排序的元素转化为字符串['3','22','18','9'],找字符串对应的Unicode码表

  //Unicode码表 排序  1234(数字)  ABC(大写)  abc(小写)  好(字符串)

    var arr1 = ['二','a',5,'A']    
    console.log(arr1.sort());       //[5, 'A', 'a', '二']
    var arr2=[1,5,6,2,4,3];
    console.log(arr2.sort());       //[1, 2, 3, 4, 5, 6]
    var arr3=[3,22,18,9];
    console.log(arr3.sort());       //[18, 22, 3, 9]
    console.log(arr3.reverse());    //[9, 3, 22, 18]

  •   reverse() 方法反转数组中的元素

 与sort() 相同的是,reverse() 也是按照字符串排序,只它不过是降序

    var arr3=[3,22,18,9];
    console.log(arr3.sort());//[18, 22, 3, 9]
    console.log(arr3.reverse());//[9, 3, 22, 18]

  • sort() 方法实现数值排序  --  定义一个比值函数

    //sort(callback)
    //function(x,y){}
    var arr=[3,22,18,44,9];
    arr.sort(function (x,y) { return x-y })
    console.log(arr);//[3, 9, 18, 22, 44]
    console.log(arr.reverse());//[44,22,18,9,3]

  • 以随机顺序排序数组 

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return 0.5 - Math.random()}); 

 使用 Math.max.apply 来查找数组中的最大值:(最小值 Math.max.apply())

var points = [40, 100, 1, 5, 25, 10];
console.log(myArrayMax(points));	//100

function myArrayMax(arr) {
  return Math.max.apply(null, arr);
}

  • 比较字符属性

    var cars = [ "BMW", "Audi", "porsche"];  
    var fn = function(a, b){
        var x = a.toLowerCase();
        var y = b.toLowerCase();
        if (x < y) {return -1;}
        if (x > y) {return 1;}
        return 0;
    };
    console.log(cars.sort(fn));

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值