2011-05-01 84 views
0

我是新來的JavaScript和編程本身,我試圖在谷歌地圖api中添加標記,並從mysql載入它的座標,我做了所有事情,但現在我陷入了一些東西,是否有可能創建一個數字基於我擁有的座標數量的變量?這裏是我有什麼:如何在javascript中創建動態變量?可能嗎?

function get_values(numero, array) 
{ 
var i; 
    for(i=0;i<numero;i++) 
    { 
     //var i (HERE: i want it to set variables based on i)= new google.maps.Marker({ 
     position: array[2], 
     //map: map, 
     //title:"Hello World!" 
    }); 
    } 
} 
+1

不能完全遵循這個問題,你能澄清嗎? – 2011-05-01 14:39:18

回答

1

看來你需要使用的是一個數組。這將允許您存儲儘可能多的座標,並且您可以通過索引(數字)訪問它們。例如,如果你有10個座標,它們可以存儲在像數組:

position[i] = array[2] 

你的代碼看起來,雖然很破,所以我認爲你需要更多的幫助比指出堆棧溢出問題入門會得到你。

+0

我怎樣才能做到這一點與數組?這是標記對象: var marker = new google.maps.Marker({位置:myLatlng, map:map, title:「Hello World!」 }); – 2011-05-01 14:40:19

+1

您可以將整個對象存儲在一個數組中。 JavaScript是動態類型的,所以你不需要知道任何關於存儲在數組中的內容。事實上,你可以在同一個陣列中存儲很多不同類型/大小的東西!所以你的代碼可能是'markers [i] = new google.maps.Marker({...})'。 – 2011-05-01 14:44:01

1

正如戈登說你需要一個數組。如果我理解正確,你想爲每次迭代創建一個標記?

那麼我想這樣的事情會做的伎倆:

function get_values(numero, array) 
{ 
    var i; 
    var markers = new Array(numero); // create an array to store the markers 
    for(i=0;i<numero;i++) 
    { 
     markers[i] = new google.maps.Marker({ 
      position: array[i], 
      map: map, 
      title: "Hello marker " + i // give a different title to each marker based on the number.. 
     }); 
    } 
    return markers; 
} 

這是假設你的get_values函數接受位置的數量和位置作爲參數的數組。