我想在一個循環內定義變量。我會在這裏放下代碼,然後試着解釋一些:如何在javascript中的for循環中定義變量?
for (var k=0; k<nodes.length; k++){
this[node+k] = new google.maps.Marker({
position: new google.maps.LatLng(array1[k], array2[k]),
map: map,
title: node[k],
icon: "some image file"
});
}
我想創建的將被命名變量列表唱已定義的數組(名稱的數組被稱爲節點上面的代碼)。所以在這個循環中,我想定義一個新變量「this [node + k]」來創建一個新的google.maps.marker變量。
其目的是爲我想寫的一些管理軟件在一個自定義Google地圖上製作一堆帶有彈出窗口的標記。
我確定必須有一些方法來做到這一點,因爲我看到了其他代碼來定義循環中的變量(當然,我不能再找到...... :()。但是,變量的名稱是定義在循環中並沒有從另一個數組中取出(因爲我的是)
我不想創建var1,var2,var3,我看到了如何做到這一點。 array。
我很抱歉,如果問題仍然不清楚,但感謝您的幫助到目前爲止,我有一種感覺,它可能是谷歌地圖代碼混淆的情況太多,所以這裏是最初的方式來定義谷歌地圖標記變量:
var NAME1= new google.maps.Marker({
position: new google.maps.LatLng(29.70600, -95.28159), // coordinates
map: map,
title:"NAME1", // marker title
icon: "http://127.0.0.1/public_html/tower.gif" // icon
});
我現在的代碼只是重複此代碼20+次來定義所有不同的變量。我想嘗試把這一切都放到for循環中,並使用數組中的名稱定義變量。
你能解釋這更好的?我不知道你真的想達到什麼。即。什麼不適合你當前的代碼? – brad 2010-06-09 19:41:36
你想動態創建X個變量?不可能。 – 2010-06-10 17:38:35
http://groups.google.com/group/google-maps-js-api-v3/browse_thread/thread/30b3f94096ae3e6b/7952f688abc30c69?lnk=raot&fwc=1&pli=1 我想我會將此鏈接添加到任何人感興趣,這解釋瞭如何在循環內創建許多這樣的地圖標記,其中包含存儲在不同數組中的latlong座標,名稱等所有信息。 – Oarcinae 2010-06-16 20:10:35