Computer >> Máy Tính >  >> Lập trình >> Javascript

Sắp xếp chữ và số bằng JavaScript

Chúng ta có một mảng hỗn hợp mà chúng ta cần sắp xếp theo bảng chữ cái và sau đó là chữ số -

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

Ví dụ

Mã cho điều này sẽ là -

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);

Đầu ra

Và đầu ra trong bảng điều khiển sẽ là -

[
   'Ab-1', 'ab-2',
   'ab-3', 'ab-10',
   'Ab-11', 'Ab-12',
   'ab-100', 'ab-101',
   'ab-105'
]