[{ price: 1, size: 2 }, { price: 2, size: 2 }, { price: 1, size: 1 }]] 依次按照price、size降序排序
function sort(arr){
for(let i = 0;i < arr.length;i++){
for(let j = i + 1;j < arr.length;j++){
if(arr[i].price < arr[j].price){
[arr[i],arr[j]] = [arr[j],arr[i]]
} else if(arr[i].price == arr[j].price && arr[i].size < arr[j].size){
[arr[i],arr[j]] = [arr[j],arr[i]]
}
}
}
return arr
}
通过两个循环比较price的大小,如果相等则比较size的大小,条件成立数组位置交互。这里[arr[i],arr[j]]=[arr[j],arr[i]]使用了ES6 解构赋值