次のオブジェクトの配列があります。
eventJsonArr[0] = { eventName: "Event One", eventYear "2012"}
eventJsonArr[1] = { eventName: "Event Two", eventYear "2011"}
eventJsonArr[2] = { eventName: "Event Three", eventYear "2012"}
eventJsonArr[3] = { eventName: "Event Four", eventYear "2013"}
eventJsonArr[4] = { eventName: "Event Five", eventYear "2010"}
eventJsonArr[5] = { eventName: "Event Six", eventYear "2011"}
とにかく、各オブジェクトのプロパティに基づいてこの配列を並べ替えることができますか? 要するに、私が必要とするのは、最初にオブジェクトの配列をeventYear
降順でソートし、次にeventName
昇順でソートできることだけです。
とが列で、配列の各インデックスが行で、含まれてeventName
いる.eventYear
ORDER BY eventYear DESC, eventName ASC
これを「ページ プレビュー」で使用する必要があるため、実際のデータベースをクエリするように設定したページとまったく同じように動作する必要があります (上記のとおり)。
追加情報:
私は実際に.push()
jquery.each()
ループで一度に 1 つずつ値を ing しているので、完全な値の配列を実際にソートするのではなく、実際に配列に値を追加しているときに何かを行う必要がある場合は、これを行うことができます (ただし、そこで必要なロジックはわかりません)。
この質問を投稿する前に私が試したことは次のとおりです。
eventJsonArr.sort() //As a start, just to see what it did.
その後:
evenJsonArr.sort(function(a, b) { //I got the basic function to sort, which it did.
a.eventYear - b.eventYear
});
この機能以外に、自分の状況に関連するものは何も見つかりませんでした。少なくとも私が見つけたわけではありません。
ここに私が私を助けるために調査しようとしたいくつかのページがあります:
- http://www.javascriptkit.com/javatutors/arraysort2.shtml
- https://gist.github.com/onpubcom/1772996
- Javascript オブジェクト配列を日付で並べ替える
- JavaScript の文字列プロパティ値でオブジェクトの配列を並べ替える
- (そして恐ろしい W3Schools でさえ。これは役に立たなかったと推測できます)。