// 定义数组
let array1 = [
{ a: 2, b: 2 },
{ a: 1, b: 12 },
{ a: 5, b: 8 },
{ a: 3, b: 9 },
{ a: 2, b: 4 },
{ a: 3, b: 7 },
{ a: 1, b: 10 }
]
// 排序 优先按a属性排序,其次根据b属性排序
array1.sort((item1, item2) => (item1.a === item2.a) ? (item1.b - item2.b) : (item1.a - item2.a))
console.log(array1);
优先按a属性排序,其次根据b属性排序,类似数据库中的order by a asc, b asc
,在node中的执行结果如下:
[
{ a: 1, b: 10 },
{ a: 1, b: 12 },
{ a: 2, b: 2 },
{ a: 2, b: 4 },
{ a: 3, b: 7 },
{ a: 3, b: 9 },
{ a: 5, b: 8 }
]