js字符串按照某一个规则进行排序

假如现有字符串01,03,02,11,13,12,21,23,20排序后得到01,11,21,02,12,20,03,13,23即正序排列的同时,最后一位相同的在一起。如... 假如现有字符串 01,03,02,11,13,12,21,23,20
排序后得到 01,11,21,02,12,20,03,13,23
即正序排列的同时,最后一位相同的在一起。如果第二个数是0的(如20),不可以在最前面。谢谢。
展开
 我来答
小傅说数码
推荐于2018-05-09 · 数码小专家,专注分享数码知识
小傅说数码
采纳数:432 获赞数:29257

向TA提问 私信TA
展开全部
var arr = ['01','03','02','11','13','12','21','23','20'];
arr.sort(function(a, b) {
    return (a % 10 == 0 ? +a + 2 + "" : a).split("").reverse().join("") - (b % 10 == 0 ? +b + 2 + "" : b).split("").reverse().join("")
});

sort方法里面的函数就是这个规则。返回负数代表前一个小,返回0代表一样大,返回正数代表后一小

泰高爽30
2019-07-05
知道答主
回答量:1
采纳率:0%
帮助的人:731
展开全部
<script type="text/javascript">
function lineupStudents(students){
var stu=students.split(",");
stu.sort(function(a,b){
if(a.length==b.length){
return a.localeCompare(b);
}else{
return b.length-a.length;
}
});
document.write(stu);
}
var s1 = "T,A,C,B,D";
lineupStudents(s1);
</script>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一起游青岛
2016-11-08 · TA获得超过181个赞
知道小有建树答主
回答量:224
采纳率:0%
帮助的人:83.2万
展开全部
sort()js排序方法你可以直接用 正好满足你的需求
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式