js将数组中的字符串执行字母表排序

第一种:将数组中的字符串执行不区分大小写的字母表排序


<!DOCTYPE html>
<meta charset=utf-8>
<html>
<head>  
    <title>不区分大小写的字母表排序</title>
</head>
<body>
<script type="text/javascript">  
    let arr = ['abc', 'aba', 'aef', 'Def', 'BoC', 'FED'];  
    //console.log(arr.sort()); // ["BoC", "Def", "FED", "abc"]  
    let arrSort = arr.sort(function(s, t) {  
        let a = s.toLowerCase();  
        let b = t.toLowerCase();  
        if (a < b) return -1;  
        if (a > b) return 1;  
        return 0;  
    })  
    console.log(arrSort);
</script>
</body>
</html>复制代码


运行结果:

[ 'aba', 'abc', 'aef', 'BoC', 'Def', 'FED' ]​复制代码


第二种:将数组每一项按照从第二个字符开始的字母表顺序排序

举例:

输入为:["abc","bac","acb","acg","acz"]

输出为:["bac","abc","acb","acg","acz"]

排序的规则为:按照从第二个字符的字母表进行排序,例如“abc”中第二个字符为b,“bac”第二个字符为a,那么“bac”排在“abc”的前面;如果第二个字符大小也相同,则按照第三个字符的大小进行排序,以此类推,直至比较出大小;如果两个数字完全相同则顺序不变。


<!DOCTYPE html>
<meta charset=utf-8>
<html>
<head>  
    <title>将数组每一项按照从第二个字符开始的字母表顺序排序</title>
</head>
<body>
<script type="text/javascript"> 
    let compare = function (string1, string2) {    
        for(var i=1;i<string1.length;i++){       
            let val1 = string1[i];         
            let val2 = string2[i];      
            if (val1 < val2) {          
                return false;      
            } else if (val1 > val2) {          
                return true;     
            }    
        }     
        return false;
     } 
     let a=["abc","bac","acb","acg","acz"];  
     a.sort(compare);
     console.log(a);
</script>
</body>
</html>复制代码

运行结果:

[ 'bac', 'abc', 'acb', 'acg', 'acz' ]​复制代码

​后面会继续补充。。。。。。



  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值