【问题标题】:Sort by date, descending in ramda js按日期排序,在 ramda js 中降序
【发布时间】:2020-07-28 23:12:37
【问题描述】:

https://ramdajs.com/docs/#sort

如何使用它来排序这个数组?

const prices = [
      {
        date: "2020-07-27",
        value: 157,
      },
      {
        date: "2020-07-26",
        value: 157,
      },
      {
        date: "2020-07-28",
        value: 157,
      },
    ];

const expectedOutput = [
      {
        date: "2020-07-28",
        value: 157,
      },
      {
        date: "2020-07-27",
        value: 157,
      },
      {
        date: "2020-07-26",
        value: 157,
      },
    ];

【问题讨论】:

  • 这能回答你的问题吗? How to sort array by date
  • 请注意,传递给 Ramda 的 sort 函数的函数与传递给原生 Array.prototype.sort 函数的函数相同。
  • 嗯。但我不明白如何用 ramda 实现它
  • 另一种 Ramda 可能性:sort (descend (prop ('date'))) (prices)。对于升序排序,更简单,sort (prop ('date')) (prices)

标签: javascript ramda.js


【解决方案1】:

根据我的理解,我认为您可以使用 Date API 来做到这一点

const diff = function(a, b){
 return new Date(a.date).getTime() - new Date(b.date).getTime()
}

R.sort(diff,prices);

如果这个答案达不到你的预期,请给我评论

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多