2015-10-02 107 views
3

考慮以下擴展對象進行排序:使用下劃線到嵌套對象數組

enter image description here

現在每個對象存儲到一個數組,它很容易通過姓名,電子郵件,created_at或什麼排序還有別的。但如果我想用戶檔案投資者類型疼痛怎麼辦?在圖片中,您應該這樣做:data.profile.data.investor_type以獲取投資者類型。

如何使用下劃線通過對象中的嵌套屬性對這些對象的數組進行排序?

+0

[排序使用Javascript嵌套對象的可能的複製和/或Underscore.js](http://stackoverflow.com/questions/27810286/sorting-nested-objects-using-javascript-and-or-underscore-js) – Dinei

+0

不是它的重複。 – TheWebs

回答

9

可以使用_.sortBy與你有確切的代碼顯示

_.sortBy(data, function(obj) { return obj.profile.data.investor_type; }); 

如果環境支持ECMA Script 2015's Fat-arrow functions,那麼你就可以在同一寫成

_.sortBy(data, (obj) => obj.profile.data.investor_type); 
+0

我有點失落在這種情況下,如何按照投資者類型排序對象的數組? – TheWebs

+0

對於數組中的每個元素,相應的'investor_type'用於比較。所以,對象數組將根據'investor_type'進行排序。 – thefourtheye

+0

你一定要閱讀_.sortBy函數,按照我指定的給定值對數組進行排序,在你的例子「profile.data.investor_type」中。一個小提琴條目播放:https://jsfiddle.net/zobidafly/g45pereL/ – zobidafly