2014-06-30 93 views
1

在我的应用程序中,当您单击地图上的一个点时,它会返回地址。例如:将对象地址转换为字符串

locator.on("location-to-address-complete", function(evt) { 
if (evt.address.address) { 
     var address = evt.address.address; 
     var location = webMercatorUtils.geographicToWebMercator(evt.address.location); 
     console.log(address) 
    } 
}); 

控制台显示:

Object {Address: "1029 W Cermak Rd", Neighborhood: null, City: "Chicago", Subregion: null, Region: "Illinois"…} 

有没有办法将地址转换为字符串。基本上我只想: 1029 W Cermak路,芝加哥,伊利诺伊州。

谢谢。

+0

因此,建立从目标...'的console.log(address.Address + “ ”+ address.City +“” + address.Region)' – epascarello

回答

4

有没有通用的方式来做到这一点。您只需要连接您感兴趣的字段。您可以使用filter过滤掉空/空字段,然后使用join结果。

var address = evt.address.address; 

addressString = [ 
    address.Address, 
    address.Neighborhood, 
    address.City, 
    address.Region, 
    address.Subregion, 
].filter(function (val) { return val }).join(", "); 
+0

您需要删除空值的字符串(如他们不知道) – soktinpk

+0

@soktinpk确实,固定 – meagar

+0

很酷,这将工作!谢谢。 – Andrew