1
一個地圖以正確的方式我有一個地圖m
:什麼是排序他們的財產的子對象在Immutable.js
var m = Immutable.fromJS({
first: {a: 6, b: 3},
second: {a: 3, b: 6},
third: {a: 2, b: 4}
})
我想通過自己的財產b
排序在m
子對象,像這樣:
[
{a: 6, b: 3},
{a: 2, b: 4},
{a: 3, b: 6}
]
我已經試過如下:
m.valueSeq().sort(function(a, b) {
return a.get('b') > b.get('b')
}).toJS()
它運作良好,在Chrome和node.js中,但在OS X中的Safari 8.0,結果是
[
{a: 6, b: 3},
{a: 3, b: 6},
{a: 2, b: 4}
]
它沒有那種了!這在我的React/Redux應用程序中造成了一些錯誤。它的問題是什麼?那麼排序它的正確方法是什麼?謝謝!
你應該返回一個布爾值,當你應該返回一個數字。 '返回a.get('b') - b.get('b')'。當「a」更大時,這返回一個正數。當「b」較大時,它返回一個負數,等於時返回「0」。 – 2016-09-18 13:58:15