根據字串中數字對陣列中的字串排序 JavaScript
我們有個字串陣列,其中每一個字串包含一個或多個數字,如下所示 −
const arr = ['di5aster', 'ca1amity', 'cod3', 'ho2me3', 'ca11ing'];
我們需要編寫一個排序函式,按照字串中數字的升序排列此陣列。正確的順序如下 −
const output = [ 'ca1amity', 'cod3', 'di5aster', 'ca11ing', 'ho2me3' ];
因此,我們來編寫此問題的程式碼 −
示例
const arr = ['di5aster', 'ca1amity', 'cod3', 'ho2me3', 'ca11ing'];
const filterNumber = str => {
return +str
.split("")
.filter(el => el.charCodeAt() >= 48 && el.charCodeAt() <= 57)
.join("");
};
const sorter = (a, b) => {
return filterNumber(a) - filterNumber(b);
};
arr.sort(sorter);
console.log(arr);輸出
控制檯中的輸出將如下所示 −
[ 'ca1amity', 'cod3', 'di5aster', 'ca11ing', 'ho2me3' ]
廣告
資料結構
計算機網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP