我有一个如下所示的数组:
const arr = [
[500, 'Foo'],
[600, 'bar'],
[700, 'Baz'],
];
我想按每个内部数组中的第二个元素按字母顺序对此arr
进行排序,即:
[
[600, 'bar'],
[700, 'Baz'],
[500, 'Foo'],
]
请注意不区分大小写。另外,如果他们派上用场,我很乐意使用lodash助手!
答案 0 :(得分:6)
这是一个具体的工作示例,使用Array.prototype.sort
:
const arr = [
[500, 'Foo'],
[600, 'bar'],
[700, 'Baz']
];
arr.sort((a,b) => a[1].toUpperCase().localeCompare(b[1].toUpperCase()));
console.log(arr);
答案 1 :(得分:1)
Array.prototype.sort接受一个函数,该函数将应用于数组中的每对项目。该函数的返回确定项目的排序方式(需要返回正数,0或负数)。