Javascript 将地址编码为GPS坐标

Javascript 将地址编码为GPS坐标,javascript,google-maps,geolocation,yahoo-maps,Javascript,Google Maps,Geolocation,Yahoo Maps,我希望对地址进行地理编码,并将其转换为GPS坐标。基本上 var address; // Google/Yahoo/whatever program to convert address to GPS coordinates var output=xx.xxxxxxx,xx.xxxxxxx 我研究过Google和Yahoo API,但似乎无法在我的Google小工具中使用它们的代码。有什么建议吗 提前谢谢 以下是我为解决gps coords需要而做的工作: function get_co

我希望对地址进行地理编码,并将其转换为GPS坐标。基本上

var address;

//  Google/Yahoo/whatever program to convert address to GPS coordinates

var output=xx.xxxxxxx,xx.xxxxxxx
我研究过Google和Yahoo API,但似乎无法在我的Google小工具中使用它们的代码。有什么建议吗


提前谢谢

以下是我为解决gps coords需要而做的工作:

function get_coords(address)
{
    var gc      = new google.maps.Geocoder(),
        opts    = { 'address' : address };

    gc.geocode(opts, function (results, status)
    {
        if (status == google.maps.GeocoderStatus.OK)
        {   
            var loc     = results[0].geometry.location,
                lat     = loc.$a,
                long    = loc.ab;

            // Success.  Do stuff here.
        }
        else
        {
            // Ruh roh.  Output error stuff here
        }
    });
}
然后你像
get_coords('1600 Pennsylvania Avenue NW Washington,DC 20500')那样调用它
,它将返回纬度和经度

当然,您需要提供自己的GoogleMapsAPI密钥才能使其正常工作


希望这有帮助

我帮助维护一个调用的API,它可以实现这一点。比Google/Yahoo的API更易于使用,并且没有限制性的服务条款,这些条款禁止大量请求、存储结果或在不显示地图或自动化的情况下使用数据

下面是一个完整的示例,使用:


单个坐标位于
geo.lat
geo.lon
中,组合字符串“lat,lon”格式位于
geo.coords
中。您还可以使用
geo.precision

获得数据的精度。我做到了这一点,工作非常完美:

<script type="text/javascript">
var dir1 = "5th ave, new york";
var google_url = "http://maps.googleapis.com/maps/api/geocode/json?address=";
var sensor = "&sensor=false";
var resultado;

function myFunction(){ 

    $.getJSON(
        google_url+dir1+sensor,
        function(result){
            $( "body" ).append( "Latitude: " + JSON.stringify(result.results[0].geometry.bounds.northeast.lat) )
            $( "body" ).append( "Longitude: " + JSON.stringify(result.results[0].geometry.bounds.northeast.lng) )  
    });

}

var dir1=“纽约第五大道”;
var google_url=”http://maps.googleapis.com/maps/api/geocode/json?address=";
var sensor=“&sensor=false”;
结果变量;
函数myFunction(){
$.getJSON(
谷歌url+dir1+传感器,
功能(结果){
$(“body”).append(“纬度:+JSON.stringify(result.results[0].geometry.bounds.northeast.lat))
$(“body”).append(“经度:+JSON.stringify(result.results[0].geometry.bounds.northeast.lng))
});
}

Google API和Yahoo API都能做到这一点,所以我的建议是发布不起作用的代码。
<script type="text/javascript">
var dir1 = "5th ave, new york";
var google_url = "http://maps.googleapis.com/maps/api/geocode/json?address=";
var sensor = "&sensor=false";
var resultado;

function myFunction(){ 

    $.getJSON(
        google_url+dir1+sensor,
        function(result){
            $( "body" ).append( "Latitude: " + JSON.stringify(result.results[0].geometry.bounds.northeast.lat) )
            $( "body" ).append( "Longitude: " + JSON.stringify(result.results[0].geometry.bounds.northeast.lng) )  
    });

}