javascript - 如何按字符串中的第一个字符对数组进行排序?

标签 javascript arrays sorting

如何对这个数组进行排序?

输入:['sfr2ta', '2ab', 'bbb1ddd']

输出:['bbb1ddd', 'sfr2ta', '2ab']

最佳答案

如果您想按第一个字符排序,那么输出应如下所示:['2ab', 'bbb1ddd', 'sfr2ta']。

但是如果你想将字母排序在数字之前,那么你可以这样写:

    l = ['sfr2ta', '2ab', 'bbb1ddd'];
    
    lNums = []

    lStrs = []

    for( let s of l ) {
        if(s[0] >= 0 && s[0] <= 9){
            lNums.push(s);
        }
        else {
            lStrs.push(s);
        }
    }
    lNums.sort();
    lStrs.sort();
    l = lStrs.concat(lNums);
    console.log(l)

output: [ 'bbb1ddd', 'sfr2ta', '2ab' ]

关于javascript - 如何按字符串中的第一个字符对数组进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62494135/

相关文章:

c++ - 使用数字占位符从文件中按字母顺序排序

javascript - 带有 FloatingActionButton 组件的 React-Native-Popup-Menu 无法使用 MenuTrigger 触发

c++ - 从二维数组 c++ 打印空格而不是整数

objective-c - 对不是基于字符串的字符串的 nsarray 进行排序

arrays - 创建更小的均匀分布数组

javascript - 从数组中删除随机字符串,JavaScript

arrays - 如何在R中制作和排序元组数组

php - 用户登录后,js文件包含php

javascript - 将 JSON 字符串解析为 HTML5 代码的更快方法

javascript - PHP 回显 jQuery AJAX 请求