How to sort array of objects based on a boolean property?

前端 未结 2 2010
闹比i
闹比i 2020-12-02 02:18

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 l

2条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-12-02 02:39

    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
    

提交回复
热议问题