JavaScript数组排序

1、纯字符排序: var arr = ['c','a','d','b'];arr.sort();alert(arr);//a,b,c,d 2、纯数字排序: 数字排序不能直接使用sort( )方法,因为它是直接先比较第一位数字 var arr1 = [1,5,3,8,...

1、纯字符排序:

var arr = ['c','a','d','b'];
arr.sort();
alert(arr);//a,b,c,d


2、纯数字排序:

数字排序不能直接使用sort( )方法,因为它是直接先比较第一位数字

var arr1 = [1,5,3,8,56,23,2];
arr1.sort();
alert(arr1);//1,2,23,3,,5,56,8

应该在sort( )方法中放一个比较函数:
由小到大排序

var arr1 = [1,5,3,8,56,23,2];
// 在sort( )方法中放一个比较函数
arr1.sort(function(a,b){//a,b是参数
    return a-b;//由小到大进行排序
});
alert(arr1);//1,2,3,5,8,23,56

由大到小排序:

var arr1 = [1,5,3,8,56,23,2];
// 在sort( )方法中放一个比较函数
arr1.sort(function(a,b){//a,b是参数
    return b-a;//由小到大进行排序
});
alert(arr1);//56,23,8,5,3,2,1

解析:比较函数中a-b是第一个数减去第二个数,如果是正数那么就调换他们之间的位置,如果是负数就不调换位置;


3、数字带单位排序

根据数字大小来进行排序:

var arr2 = ['10px','48px','13px','100px','50px'];
arr2.sort(function(a,b){
    return parseInt(a) - parseInt(b);//只是改变位置,并不会改变类型
});
alert(arr2);//10px 13px 48px 50px 100px



你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
admin
admin

651 篇文章

作家榜 »

  1. admin 651 文章
  2. 粪斗 185 文章
  3. 王凯 92 文章
  4. 廖雪 78 文章
  5. 牟雪峰 12 文章
  6. 李沁雪 9 文章
  7. 全易 2 文章
  8. Stevengring 0 文章