JavaScript oggetti non hanno alcun ordine. Sebbene la maggior parte dei browser esegua l'iterazione nello stesso ordine in cui sono state create le proprietà, non c'è alcuna garanzia, quindi l'ordinamento non è supportato sugli oggetti.
Vedi qui per ulteriori informazioni: Does JavaScript Guarantee Object Property Order?
Potreste anche essere interessati a ciò che John Resig has got to say sulla questione.
Se avete bisogno di un elenco di ordinamento-grado, dovrete conservarlo come un array di oggetti:
var masterList = [
{ key: 1, val: "google" },
{ key: 2, val: "yahoo" },
{ key: 3, val: "msn" },
{ key: 4, val: "stackoverflow" },
{ key: 5, val: "github" },
{ key: 6, val: "jsfiddle" },
{ key: 7, val: "amazon" },
{ key: 8, val: "ebay" }
];
Poi, per ordinare loro, basta usare il metodo della serie regolare sort
:
masterList = masterList.sort(function (a, b) {
return a.val.localeCompare(b.val);
});
Ecco il violino: http://jsfiddle.net/ASrUD/
fonte
2013-01-08 05:21:18
Questo post ti aiuterà a farlo, http://stackoverflow.com/questions/881510/json-sorting-in-jquery – Adil
Prova masterList.sort() –