JavaScript数组使用sort排序
JavaScript数组使用sort排序
专业填坑 发表于2年前
JavaScript数组使用sort排序
  • 发表于 2年前
  • 阅读 49
  • 收藏 2
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

var num = [1,10,13,5,9];
num.sort();
alert(num.toString()); //错误的排序1,10,13,5,9
num.sort(compare);
alert(num.toString()); //正确的排序13,10,9,5,1

//比较函数
function compare(value1,value2){
    if(value1 == value2) {
        return 0;
    }
    if(value1 > value2) {
        return -1;
    }
    if(value1 < value2) {
        return 1;
    }
}

说明:数组排序sort本身会对数组每一项调用toSring()方法,所以比较数字时,数组中每一项数字都会被转化为为字符串,sort()根据字符串来排序,所以会出现13比5小的情况,正确的做法是使用一个比较函数做为参数

sort()返回值是经过排序后的数组

共有 人打赏支持
粉丝 5
博文 66
码字总数 9463
×
专业填坑
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: