How To Sort Array Of Objects Based On A Boolean Property?
I have list of users presented in table. Active users should be sorted above the inactive users. I am trying to make this sort using lodash sortBy function, but unsuccessfully. He
Solution 1:
You can use sort
like this:
const userArray=[{disabled:true,email:"hgaither@cmregent.com",firstName:"Harriet",lastName:"Gaither",role:"claimsHandlerSupervisor",userId:"03VFpxtMWgY1jKDHDLcrWSw1qzx1",},{disabled:false,email:"hgaither@cmregent.com",firstName:"Harriet",lastName:"Gaither",role:"claimsHandlerSupervisor",userId:"03VFpxtMWgY1jKDHDLcrWSw1qzx1",},]
userArray.sort((a,b) => a.disabled - b.disabled)
console.log(userArray)
You can just subtract the boolean property inside the compareFunction
. This works because of coercion
true - false === 1
false - true === -1
true - true === 0
Solution 2:
You can use sort
const userArray = [{disabled:true,email:"hgaither@cmregent.com",firstName:"Harriet",lastName:"Gaither",role:"claimsHandlerSupervisor",userId:"03VFpxtMWgY1jKDHDLcrWSw1qzx1",},{disabled:false,email:"hgaither@cmregent.com",firstName:"Harriet",lastName:"Gaither",role:"claimsHandlerSupervisor",userId:"03VFpxtMWgY1jKDHDLcrWSw1qzx1",},{disabled:true,email:"hgither@cmregent.com",firstName:"Hrriet",lastName:"Gither",role:"claisHandlerSupervisor",userId:"0VFpxtMWgY1jKDHDLcrWSw1qzx1",},]
let op = userArray.sort(({disabled:A}, {disabled:B})=> A-B)
console.log(op)
Post a Comment for "How To Sort Array Of Objects Based On A Boolean Property?"