将lat-long字符串转换为googlemaps API LatLng对象

Convert lat long string into google maps API LatLng Object

本文关键字:API LatLng 对象 googlemaps lat-long 字符串 转换      更新时间:2023-09-26

我正试图将一个lat-long字符串(53.3603,-6.31505000000042)转换为谷歌地图对象,格式如下:B:-6.2677469999993 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");

如有任何帮助,我们将不胜感激。

假设lat/lng字符串看起来像"10.5,-0.51"

function getLatLngFromString(ll) {
    var latlng = ll.split(/, ?/)
    return new google.maps.LatLng(parseFloat(latlng[0]), parseFloat(latlng[1])); 
}

应该工作