我使用谷歌功能根据地址返回某个位置的长/纬度,但是当我尝试将其拆分时,结果会以未定义的形式返回(如果我发出警报,则会有效){{1} } out) - 但myLatLong没有设置
function getLatLong(address){ var geo = new google.maps.Geocoder;
results[0].geometry.latitude
}
答案 0 :(得分:1)
geometry.location
是一个对象,而不是一个字符串。来自API:
location包含地理编码的纬度,经度值。请注意,我们将此位置作为LatLng对象返回,而不是作为格式化字符串。
我认为你需要:
myLatLong = results[0].geometry.location;
localStorage.setItem("SearchLat", myLatLong.lat());
localStorage.setItem("SearchLong", myLatLong.lng());
请注意,您还可以使用toUrlValue
将LatLng对象转换为字符串“lat,lng”,所以我猜你也可以使用它:
var myLatLong = results[0].geometry.location.toUrlValue();
localStorage.setItem("SearchLat", myLatLong .split(",")[0]);
localStorage.setItem("SearchLong", myLatLong.split(",")[1]);