我現在有一個非常奇怪的問題。對象屬性的奇怪問題 - 出現在循環外部,缺少循環內部
markers
是一個對象數組。
0
content (String)
coords (Object)
gMarker (Object)
1
content (String)
coords (Object)
gMarker (Object)
2
content (String)
coords (Object)
gMarker (Object)
到目前爲止,這麼好。
問題:
console.dir(markers);
/**
* output as expected
*/
for(var i in markers) {
console.dir(markers[i]);
/**
* gMarker object is missing!
* markers[i] suddenly consists just of content and coords
*/
怎麼可能?
編輯:它必須有一些與谷歌地圖的「加載」回調函數有關。至少在我的情況下,它有點太早了。我用一個簡單的setTimeout替換了回調函數(GEvent.addListener(map,「load」,callback_fn)),它在2秒後觸發我的回調函數,現在一切正常。
無論哪種方式,這並不能解釋爲什麼gMarker屬性在for循環中不可用,甚至不能成爲競爭條件,因爲循環在對象仍然正常的那一點之後立即開始。
did you try console.dir(markers [0]); console.dir(標記[1]); console.dir(標記[2]); ?我想問題是(var我在標記) – Tommy 2010-01-27 09:44:13
不幸的是,這沒有什麼區別。我也嘗試過(var i = 0; i
Alex
2010-01-27 09:49:19
你可以試試firebug 1.5和console.log嗎? – Tommy 2010-01-27 09:59:46