簡體   English   中英

如何通過javascript中包含對象的屬性值對關聯對象進行排序

[英]How order an associative object by value of property of contained object in javascript

例如,對於這個關聯對象:

a["id1"] = { Id: "id1", Count: 15, Other: "aaa"};
a["id2"] = { Id: "id2", Count: 5, Other: "bbb" }; 

我喜歡這個數組:

b[0] = { Id: "id2", Count: 5, Other: "bbb" };
b[1] = { Id: "id1", Count: 15, Other: "aaa"};

這應該可以解決問題:

var b = [];
for(x in a)
    b.push(a[x]);

不能保證數組中元素的順序,如果你想要,你必須在之后對數組進行排序。 如果您也需要這方面的幫助,請告訴我。

使用for in循環將對象收集到一個數組中,以便可以對它們進行排序。

var data = [];
for(var name in object) {
  if (object.hasOwnProperty(name)) {
    data.push ( name );
  }
}

然后使用 Javascript 內置的數組排序方法,向它傳遞一個函數來比較數組中的對象。

//I assume you are sorting on Count
data.sort(function (a,b) { return a.Count - b.Count });

暫無
暫無

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

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