我正在尝试将lat长字符串(53.3603,-6.315050000000042)转换为此格式的Google地图对象:B:-6.26747649999993 k:53.339251
我已经使用了这个功能,它可以长时间工作但是为纬度返回Nan。
function getLatLngFromString(ll) {
var lat = ll.replace(/\s*\,.*/, ''); // first 123
var lng = ll.replace(/.*,\s*/, ''); // second ,456
var locate = new google.maps.LatLng(parseFloat(lat), parseFloat(lng));
return locate;
}
;
我将lat long存储在html标记中,因为它调用了连接到地图的列表视图。它以正确的格式存储在这里,但是当我使用jQuery .attr检索它时,它将它转换为字符串。
var location = $(this).closest('.allList').attr("position");
非常感谢任何帮助。
答案 0 :(得分:13)
假设lat / lng字符串看起来像“10.5,-0.51”
function getLatLngFromString(ll) {
var latlng = ll.split(/, ?/)
return new google.maps.LatLng(parseFloat(latlng[0]), parseFloat(latlng[1]));
}
应该工作