2014-09-23 33 views
0

我有一个“名称/位置”数组,每个数据都需要进行地理编码以获得latlng。

如何可以转换该阵列的“名称/位置”成每个由[name,latlng,markerimage]名称的单独的阵列。
不要担心图片的路径,因为它是独立的,但我有一点很难理解我怎么可以在原始阵列分成各个项目,然后需要进行地理编码,以获得第二值的数组的阵列。如何将数组中的项目本身转换为数组?

这可能是更容易尝试和visulize它,而理解我的解释。
例如:

我原来的数组:
OriginalArray = ["Alkimos", "Ararat Lunatic Asylum", "Ballarat Jail", "Beechworth Lunatic Asylum", "Brisbane City Hall", "Dreamworld", "Lalor House", "Monte Cristo Homestead", "North Head Quarantine Station", "Port Arthur", "Princess Theatre Melbourne", "Whepstead House", "Victoria Park Railway Tunnel"]

然后,这需要被显示在下面的格式。

 var mapMarkers# = [Name[0],geocoded latlng of Name[0], image address], 
        [Name[1],geocoded latlng of Name[1], image address], etc 

不会与原来的阵列处理的一个例子是:

 var mapMarkers5 = [ 
      ["<em>Marker 5(Yowie/Bigfoot)</em>", -28.4543, 152.872, "images/bigfoot-icon.jpg"], 
      ["<em>Marker 6(Other)</em>", -28.1143, 151.872, "images/other-icon.png"], 
      ["<em>Marker 7(Ghost)</em>", -29.4543, 154.872, "images/ghost-icon.jpg"], 
      ["<em>Marker 8(UFO)</em>", -27.943, 151.242, "images/ufo-icon.png"], 
     ]; 

我想要做什么:对于原始数组中的所有项目

 var mapMarkers6 = [ 
      ["<em>Alkimos</em>", Alkimos(geocode).latlng, "images/bigfoot-icon.jpg"], 
      ["<em>Ararat Lunatic Asylum</em>", Ararat Lunatic Asylum(geocode).latlng, "images/bigfoot-icon.jpg"], 
      etc --> 
      ["<em>Victoria Park Railway Tunnel</em>", Victoria Park Railway Tunnel(geocode).latlng, "images/bigfoot-icon.jpg"], 
     ]; 


说实话,真的没有太大的想法从哪里开始,因为必须对名称进行地理编码才会在作品中引发一些问题。

我会做地理编码不同的功能内,或者只是作为一切吗?

回答

0

正如例如,你可以使用jQuery做这样的:

var $arr = [2,1,4]; 
var $new = [] 
$.each($arr, function(index, item) { 
    $new.push([item, 2*item]); 
}); 

结果:[[2, 4], [1, 2], [4, 8]]

所以在遍历您最初的数组,你可以只创建使用功能的新数组地理编码。

仅供参考:此处给出了详细的答案:How to loop through array in jQuery?http://api.jquery.com/each/

相关问题