web-dev-qa-db-ja.com

RxJSで配列を並べ替える

RxJavaには、オブジェクトのフローをコンパレータによってソートされたオブジェクトのリストに変換するメソッドtoSortedList(Comparator comparator)があります。

RxJSを使用してJavaScriptで同じことを実現し、オブジェクトのフローでObservableを取得して、並べ替えられた配列/リストを出力するにはどうすればよいですか?

9
Giorgio

次のコードを使用できます。

Rx.Observable.of(5,8,7,9,1,0,6,6,5).toArray().map(arr=>arr.sort()).subscribe(x=>console.log(x))
8
VincentGuo

使用可能なRxJS演算子についてはよくわかりませんが、mapping/doOnNextを使用して手動でsortを呼び出すことでtoSortedListの動作を取得できます。

source.toList().map(v -> { Collections.sort(v, comparator); return v; })...
source.toList().doOnNext(v -> Collections.sort(v, comparator))...
0
akarnokd