您的位置:首页 > Web前端 > JavaScript

javascript sort函数探究

2016-07-08 16:57 281 查看
sort函数为数组的方法,数组对象可以直接调用,返回排序后的数组,且改变原数组,不开辟新的内存,如果无参数以字母表顺序排序,有undefine放到最后

升序排列

var a = [100,200,13,41,-8,77];
a.sort(function(a,b){
//升序排列
return  a-b;
});


输出为[-8, 13, 41, 77, 100, 200]

降序排列

var a = [100,200,13,41,-8,77];
a.sort(function(a,b){
//升序排列
return b-a;
});


输出为[200, 100, 77, 41, 13, -8]

颠倒排列

var a = [100,200,13,41,-8,77];

a.sort(function(){

//升序排列

return 1;

});


输出为[77, -8, 41, 13, 200, 100]

随机数组

var a = [100,200,13,41,-8,77];

a.sort(function(){

//升序排列

return Math.random() - 0.5;

});


输出为不定,可自己测试

同时我不是很明白这其中的原理

a.sort(function(x,y){
var c = Math.random() - 0.5;
console.log(a + "     " + x+ " " + y + " " + c);
return c;
})


测试输出比较次数不定





希望有大神能解答一下^_^
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript