JavaScript 自然排序
我們有一個含有數字和字串的陣列,我們需要對陣列進行分類,將數字進行分類並置於字串前面,然後按照字母順序對字串進行分類。
例如
假設這是我們的陣列 -
const arr = [1, 'fdf', 'afv', 6, 47, 7, 'svd', 'bdf', 9];
輸出應如下所示 -
[1, 6, 7, 9, 47, 'afv', 'bdf', 'fdf', 'svd']
因此,我們來編寫此程式碼 -
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);控制檯中的輸出將是 -
[ 1, 6, 7, 9, 47, 'afv', 'bdf', 'fdf', 'svd' ]
廣告
資料結構
網路
關係型資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言
C++
C#
MongoDB
MySQL
JavaScript
PHP