当前位置: 首页 > 面试题库 >

如何根据布尔属性对对象数组进行排序?

微生毅然
2023-03-14
问题内容

我在表中列出了用户列表。 活动用户应在非活动用户上方排序

我正在尝试sort使用lodash sortBy函数进行此操作,但未成功。

这里是如何userArray的外观:

const userArray [
  { 
    // I need to show users which have disabled = false first 
    // and then users with disabled = true
    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",
 }, 
]

这是带有用户数组和sortBy
loadsh函数代码的代码笔:https
://codepen.io/nikolatrajkovicq/pen/pGXdpM?editors
= 1112


任何地方都欢迎。


问题答案:

您可以这样使用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",},]



userArray.sort((a,b) => a.disabled - b.disabled)

console.log(userArray)

您可以只减去中的boolean属性compareFunction。这是因为强制

true - false === 1
false - true === -1
true - true === 0


 类似资料:
  • 我是Java流的新手,我只想对我的对象的键进行排序。 所以,我尝试了这样的方法,效果很好 这是根据我想要的分类。 但我得到的结果在

  • 假设我有一个自定义对象的ArrayList,例如 如何按路径、格式、大小或日期添加对其进行排序? 谢了!

  • 问题内容: 比方说你有一个的对象。 如果它们都具有int GoalScored变量,则如何排序?你如何按GoalScored排序? 问题答案: 你可以使用Collections.sort自定义Comparator 。 比较部分也可以这样写: 或者,你可以制作。这定义了所有对象的自然顺序。使用a 更灵活,因为不同的实现可以按名称,年龄等进行排序。

  • 问题内容: 在Swift 2.0中,您将如何按属性对自定义对象数组进行排序?我知道在Swift 1.2中,这是使用sorted()和sort()完成的。但是,这些方法在Xcode 7 beta 4中不再起作用。谢谢! 例如: 问题答案: 在Swift 2中: 您可以使用方法,使用来比较两个日期: 或者,如果您想对原始数组进行排序,则可以: 在Swift 3中 返回数组的排序形式,请使用,而不是 排

  • 问题内容: 我已经使用AJAX获得了以下对象并将它们存储在数组中: 如何仅使用JavaScript 创建一个函数以按属性 升序 或 降序 对对象进行排序? 问题答案: 按价格升序对房屋进行排序: 或在ES6版本之后:

  • 问题内容: 我有一个对象的ArrayList。该对象包含属性和。所以我想对上的对象进行排序,对于同一日期的所有对象,我想对其进行排序。我怎样才能做到这一点? 问题答案: 实施自定义,然后使用。它可能看起来像这样: