题解 | #排序#

排序

http://www.nowcoder.com/practice/2baf799ea0594abd974d37139de27896

function MySort( arr ) {
    return arr.sort(function(a,b){  //升序
    return a-b;
})
}
module.exports = {
    MySort : MySort
};

不能单纯使用arr.sort:

1、sort()方法有一个可选参数,是用来确定元素顺序的函数。如果这个参数被省略,那么数组中的元素将按照ASCII字符顺序进行排序。
2、其实,sort方***调用每个数组项的toString()方法得到字符串,然后再对得到的字符串进行排序。虽然数值15比3大,但在进行字符串比较时”15”则排在”3”前面。显然,这种结果不是我们想要的,这时,sort()方法的参数就起到了作用,我们把这个参数叫做比较函数

//升序
arr.sort(function(a,b){
    retun a-b;
});
//降序
arr.sort(function(a,b){
    retun b-a;
});
全部评论

相关推荐

点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务