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

Sắp xếp tự nhiên trong JavaScript

Chúng ta có một mảng chứa một số số và một số chuỗi, chúng ta bắt buộc phải sắp xếp mảng sao cho các số được sắp xếp và được đặt trước mỗi chuỗi và sau đó các chuỗi phải được sắp xếp theo thứ tự bảng chữ cái.

Ví dụ

Giả sử đây là mảng của chúng tôi -

const arr = [1, 'fdf', 'afv', 6, 47, 7, 'svd', 'bdf', 9];

Đầu ra sẽ giống như thế này -

[1, 6, 7, 9, 47, 'afv', 'bdf', 'fdf', 'svd']

Do đó, hãy viết mã cho việc này -

const arr = [1, 'fdf', 'afv', 6, 47, 7, 'svd', 'bdf', 9];
const sorter = (a, b) => {
   if(typeof a === 'number' && typeof b === 'number'){
      return a - b;
   }else if(typeof a === 'number' && typeof b !== 'number'){
      return -1;
   }else if(typeof a !== 'number' && typeof b === 'number'){
      return 1;
   }else{
      return a > b ? 1 : -1;
   }
}
arr.sort(sorter);
console.log(arr);

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

[1, 6, 7, 9, 47, 'afv', 'bdf', 'fdf', 'svd']