【问题标题】:How do you sort an array of objects by a given property in Typescript?如何在 Typescript 中按给定属性对对象数组进行排序?
【发布时间】:2022-09-27 20:44:54
【问题描述】:

假设您有以下类型的对象数组:

type Obj = {
  id: number,
  created: Date, 
  title: string
}

你如何在不被类型系统绊倒的情况下按给定的属性排序?例如:

const numberSorted = objArray.sortBy(\"id\");
const dateSorted = objArray.sortBy(\"created\");
const stringSorted = objArray.sortBy(\"title\");

  • 你有没有尝试过?你遇到了哪些问题?
  • @GuillaumeBrunerie 我查看了 Array.prototype.sort() 文档并提出了以下sort((a,b) => a[property] > b[property] ? 1 : -1)。 IMO,这很冗长,所以我希望能有一些更圆滑的东西。

标签: typescript


【解决方案1】:

您可以使用Array.prototype.sort

例如:

objArray.sort((a, b) => {
    // Some code for comparison
});

了解更多排序功能:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-11
    • 2019-11-21
    • 2021-10-21
    • 1970-01-01
    • 2011-09-06
    • 1970-01-01
    相关资源
    最近更新 更多