簡體   English   中英

如何使用Ramda基於嵌套鍵對對象數組進行排序?

[英]How to sort an array of objects based on nested key using Ramda?

我從這樣的對象開始:

const myObj = {
  key1: {a: 123, b: 'some field1'},
  key2: {a: 1, b: 'some field2'},
  key3: {a: 123123, b: 'some field3'}
}

我使用R.toPairs將它轉換為數組,結果是:

[
  ["key1", {"a": 123, "b": "some field1"}], 
  ["key2", {"a": 1, "b": "some field2"}], 
  ["key3", {"a": 123123, "b": "some field3"}]
]

現在不確定如何在更深的鍵a上對此數組進行排序。 我聽說Ramda的鏡頭可以提供幫助但不確定如何。 我也對非鏡片方法持開放態度。

一種直截了當的方式是組成兩個道具:

R.sortBy(
    R.compose(
        R.prop('a'), R.prop(1)
    )
)
(R.toPairs(myObj))

如果您需要更多嵌套,請參閱此配方

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM