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

javascript中Array数组的sort()排序需要注意的地方!

2014-02-20 16:53 886 查看
今天使用javascript测试了一下数组的sort方法,sort()对数字的数组排序的时候排序不对!
function testBtn(){
var numberArr = [1,5,2,9,19,14,13,12,10,23,89,54];
var zimuArr = ["a","f","c","g","b","h","d","i","k","e","j"];
numberArr.sort();
zimuArr.sort();
alert("numberArr:"+numberArr+"\n"+"zimuArr:"+zimuArr);
}


排序结果

numberArr:1,10,12,13,14,19,2,23,5,54,89,9

zimuArr:a,b,c,d,e,f,g,h,i,j,k

仔细深究的话,会发现sort() 是根据字符来排序的。所以当排序数字的时候会出错。

解决办法是 重新制定sort() 对数字的排序规则;

Array.sort(function(a,b){return a>b?1:-1});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: