JavaScriptの履歴
オブジェクト(連想配列)の順序
http://d.hatena.ne.jp/holidays-l/20061206/p2
仕様では順序は保証されないらしい。
念のためIE6, IE7, Firefox2, Firefox3, Opera9.5, Safari3, Chromeで要素数増やした下記コードで調べてみても順序通りでした。
var a = { 'a':1, 'b':1, 'c':1, 'd':1, 'e':1, 'f':1, 'g':1, 'h':1, 'i':1, 'j':1, 'k':1, 'l':1, 'm':1, 'n':1, 'o':1, 'p':1, 'q':1, 'r':1, 's':1 }; for (var i in a){ document.write(i); } document.write('<br>'); a.t = 2; a.u = 3; a.v = 4; a.w = 5; a.x = 6; a.y = 7; a.z = 8; delete a.a; delete a.c; delete a.f; for (var i in a){ document.write(i); }