工作需求 : 对 数组中一个对象的值的进行判断 ,若数组中对象的值为0 则排序在前边
const arr= this.sortByKey(list, key)
/**
* array 需要排序的数组
* key 对象属性
*/
sortByKey(array,key){
return array.sort(function(a,b){
var x = a[key]
var y = b[key]
return( (x === '0' && y !== '0') ? -1 : ( (x !== '0' && y === '0') ? 1 : 0 ) )
})
},
若compareFunction返回值小于0,a排在b前面,即a与b的位置不变。
若compareFunction返回值等于0,a与b的位置不变。
若compareFunction返回值大于0,a排在b的后面,即a与b的位置交换。
即若返回值大于0的时候交换a与b的位置,其他情况位置不变。
参考链接:https://blog.csdn.net/aaaaa1994/article/details/88366996
参考: https://blog.csdn.net/weixin_34087307/article/details/92233775