如何按数字顺序对字符串数组进行排序?
例如,我有一个字符串数组['item 2','item 1','item 10','item 4']。我希望它是这样的,['item 1','item 2','item 4','item 10']但默认情况下,该sort()函数按字母顺序对值进行排序,这意味着它看起来像这样['item 1','item 10','item 2','item 4']
回答
只需获取数字并对其进行排序
let array = ["item 1", "item 10", "item 2", "item 4"];
const result = array.sort((a, b) => a.match(/d+/) - b.match(/d+/));
console.log(result);