首页 > 网站 > 建站经验 > 正文

js中array的sort()方法

2024-04-25 20:31:00
字体:
来源:转载
供稿:网友

 或许你一直在用javascript中的array的sort.

或许你一直相信它会给你正确的结果。

至少我曾经也是这样认为的,直到有一天,我看到了如下的代码 :

  1. [5,10,1].sort();  

或许结果有点出人意料。结果如下:

  1. [1,10,5]  

仔细深究之后,发现原来默认的sort方法并不是按照整形数据来排序,而是用的字符串匹配方式。

换言之就是10 中的这个 1 导致了上面代码的错误。

当然,解决方法有很多,可以给sort方法中传入回调函数。

  1. [5,10,1].sort(function(x,y){  
  2.         if(x>y) {return 1;  
  3.         }else{  
  4.             return -1  
  5.         }  
  6.     }  
  7. );  

 

 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表