如何使用标准数组方法在Javascript中按数字顺序对数字名称进行排序



如何使用标准数组方法在Javascript中按数字顺序对数字名称进行排序?

示例:

[] =>
[]
[ 'nine', 'one' ] =>
[ 'one',  'nine' ]
[ 'one', 'two', 'three' ] =>
[ 'one', 'two', 'three' ]
[ 'nine',  'eight', 'nine', 'eight' ] =>
[ 'eight', 'eight', 'nine', 'nine']
[ 'one',  'one', 'one', 'zero' ] =>
[ 'zero', 'one', 'one', 'one' ]

我想你甚至不知道如何开始,这就是为什么你甚至没有尝试。

无论如何,这里有一种方法,如何做到:

const input = ['nine','eight','nine','eight', 'one','two','three']
const digitsComparator = (a, b) => {
const mapper = ['zero', 'one', 'two', 'three', 'four',
'five', 'six', 'seven', 'eight', 'nine']
return mapper.indexOf(a) - mapper.indexOf(b) 
}
const res = input.sort(digitsComparator)
console.log(res)

arr = [ 'nine','eight','nine','eight'];
const mapper = ['zero', 'one', 'two', 'three', 'four',
'five', 'six', 'seven', 'eight', 'nine'];
return arr.sort((a, b) => mapper.indexOf(a) - mapper.indexOf(b))

最新更新