javascript array sort()

[5,10,1].sort(); 结果[1,10,5] 有点出人意料。

 

 

array.sort( sortFunction )可选-指定如何比较元素顺序的函数名称

如果省略sortFunction参数,元素将按ASCII字符顺序的升序进行排列。

// 根据元素转换为字符串后的字符长度进行升序排列
function arraySortByLength(a, b){
    // 为便于用户理解,此处未考虑a或b为undefined或null的情况。
    var aStr = a.toString(), bStr = b.toString();
    // 如果是按照字符长度降序排序,则应该为bStr.length - aStr.length
    return aStr.length - bStr.length;
}
 

function compact(a,b){

a=parseInt(a);
b=parseInt(b);

if(a<b)return -1;
else if(a==b)return 0;
else return 1;
}

 
posted @ 2015-07-29 15:45  alllin  阅读(215)  评论(0编辑  收藏  举报