2012-07-24 27 views
0

我正在用JavaScript構建JSON。這是我的目標:如何強制Firebug按照聲明的順序打印我的JSON屬性?

catalogoJSON = { 
    condicion: condicionCatalogos0, 
    tipo: tipoCatalogos0, 
    idCatalogo: idCatalogo0, 
    valor: valorCatalogos0 
}; 

但是,當我使用Firebug打印出來,我讓我的屬性按字母順序打印:

{ 
    condicion: condicionCatalogos0, 
    idCatalogo: idCatalogo0, 
    tipo: tipoCatalogos0, 
    valor: valorCatalogos0 
} 

有沒有在JavaScript的方式來找回我與它的屬性JSON在我宣佈他們的訂單,而不必更改我的物業名稱?

+1

你爲什麼要他們?對象屬性的順序無法保證,因此它不應該。 – Joseph 2012-07-24 17:48:45

+0

可能重複的[JavaScript保證對象屬性順序?](http://stackoverflow.com/questions/5525795/does-javascript-guarantee-object-property-order) – epascarello 2012-07-24 17:51:12

+0

爲應用程序我開發它的重要我按照我申報的順序得到他們。 – linker85 2012-07-24 17:52:04

回答

4

JavaScript中的對象沒有繼承順序。 Firebug只是按字母順序打印,因爲它感覺就像它(Chrome的開發工具)。

您可以嘗試通過該對象循環,並自己打印,即可能保持順序。

for(var x in catalogoJSON){ 
    console.log(x, catalogoJSON[x]); 
} 
+0

把我的json放到我想要的順序+上面的例子中。 – linker85 2012-07-24 17:53:10

+1

據我所知,瀏覽器確實在循環中保持它們的順序,但標準暗示它們不應該是這樣。所以...我不會依賴它。 – Joseph 2012-07-24 17:53:33

+0

@ linker85:如果這對你有效,你應該[接受答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235)。 (我只提到它,因爲我注意到你沒有在其他地方接受任何答案,如果答案中的任何一個回答了你的問題,你也應該這樣做。) – Ryan 2012-07-24 18:06:51

相關問題