【发布时间】:2021-01-02 00:27:33
【问题描述】:
我有以下数组要排序。
const input = ["12 - Blue, Red, Orange, Purple",
"16 - White, Black, Yellow, Blue, Pink",
"14 - Yellow, Brown, Grey, Maroon, Green",
"20 - Red, Black, Yellow, Peach, Aqua",
"7 - White, Cream, Grey, Green, Magenta" ]
目的是按升序对行进行排序,如第 7 行,然后是第 12 行、第 14 行、第 16 行,最后是第 20 行。这是我尝试过但不起作用的方法
const input = [
"12 - Blue, Red, Orange, Purple",
"16 - White, Black, Yellow, Blue, Pink",
"14 - Yellow, Brown, Grey, Maroon, Green",
"20 - Red, Black, Yellow, Peach, Aqua",
"7 - White, Cream, Grey, Green, Magenta"
]
var x = input.sort(function(a, b) {
return a[0] > b[0] ? 1 : -1;
});
console.log(x)
如此复杂的数组如何升序排序?
【问题讨论】:
-
input.sort((a,b)=>{ return parseInt((a.split('-')[0]).trim()) - parseInt((b.split('-')[0]).trim()) })- 假设你的格式(- ) 不会改变。 -
我认为这看起来并不复杂
标签: javascript node.js