使用JavaScript进行字母数字排序

我们有一个混合数组,我们需要按字母排序,然后按数字排序-

const arr = ['Ab-1', 'Ab-11', 'Ab-12', 'ab-10', 'ab-100', 'ab-101', 'ab2', 'ab-3', 'ab-105'];

示例

为此的代码将是-

const arr = ['Ab-1', 'Ab-11', 'Ab-12', 'ab-10', 'ab-100', 'ab-101', 'ab2', 'ab-3', 'ab-105'];

const alphaNumericSort = (arr = []) => {

   arr.sort((a, b) => {

      const aPart = a.split('-');

      const bPart = b.split('-');

      return aPart[0].toLowerCase().localeCompare(bPart[0].toLowerCase()) || aPart[1] - bPart[1];

   });

};

alphaNumericSort(arr);

console.log(arr);

输出结果

控制台中的输出将是-

[

   'Ab-1', 'ab-2',

   'ab-3', 'ab-10',

   'Ab-11', 'Ab-12',

   'ab-100', 'ab-101',

   'ab-105'

]

以上是 使用JavaScript进行字母数字排序 的全部内容, 来源链接: utcz.com/z/343257.html

回到顶部