Javascript 我怎样才能从中得到城市的名字?

Javascript 我怎样才能从中得到城市的名字?,javascript,api,geolocation,location,Javascript,Api,Geolocation,Location,我在html中有这个 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="initial-scale=1.0, user-scalable=no"/> <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>

我在html中有这个

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no"/> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
<title>Geolocation</title>
<script   src="https://code.jquery.com/jquery-2.2.3.min.js"   integrity="sha256-a23g1Nt4dtEYOj7bR+vTu7+T8VP13humZFBJNIYoEJo="   crossorigin="anonymous"></script>
<script src="funciones.js"></script>
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script> 
</head>
<body>
<button id="startGeo">Click here to check your geolocation abilities</button>
</body>
</html>

从这里我得到了坐标,但我完全不知道如何得到城市名称。。。或者州名。我看到一个类似的问题得到了回答,但他们似乎在使用json。我不想要地图,只要信息,它可以是文本或警报。有什么想法吗?

您可以使用反向地理编码API

电话示例:

您可以这样替换getLocation函数(在访问数据之前进行适当的测试。结果[2]):

您可以检查以下小提琴以查看其动作:


+Nowres Rafed我稍微更改了您的代码:

function getLocation(position){
var latitud = position.coords.latitude;
var longitud = position.coords.longitude;
var exactitud = position.coords.accuracy;

$.get('https://maps.googleapis.com/maps/api/geocode/json?latlng=' + latitud + ',' + longitud, function(data) {
    alert(data.results[1].formatted_address);
});

//alert("latitud: " + latitud + " longitud: " + longitud + " exactitud: " + exactitud);
//document.write("we received your location");

这样可以提供更多的信息。非常感谢你。我想知道的是(如果可能的话)我在哪里可以阅读或者知道如何获取特定的答案,我读到当你得到结果时,它会返回多个结果。我改变了你提到的号码,测试了不同的选项。但是,有什么地方我可以找到这些结果吗?请原谅我的打扰,我对这件事还不熟悉。

非常感谢你。的确,多亏了你的帮助,我得到了这个信息,但是错了,它给了我一个我不知道的地址。这可能是api中json的问题吗?我运行了其他代码,它根据我使用的浏览器给出了不同的位置。我想知道这是否与数据有关。如果是这样的话,我怎么知道该使用哪一个呢?事实上,这取决于数据结果[2]我在这里放了2个例子,请查看API文档以更好地了解响应:谢谢,我了解得更多。然而(我在回答中问了这个问题,但idk是否会影响到你)我在哪里可以看到不同的结果??有一页吗?
function getLocation(position){
    var latitud = position.coords.latitude;
    var longitud = position.coords.longitude;
    var exactitud = position.coords.accuracy;

    $.get('https://maps.googleapis.com/maps/api/geocode/json?latlng=' + latitud + ',' + longitud + '&sensor=true', function(data) {
        alert(data.results[2].address_components[0].long_name);
    });

    //alert("latitud: " + latitud + " longitud: " + longitud + " exactitud: " + exactitud);
    //document.write("we received your location");
}
function getLocation(position){
var latitud = position.coords.latitude;
var longitud = position.coords.longitude;
var exactitud = position.coords.accuracy;

$.get('https://maps.googleapis.com/maps/api/geocode/json?latlng=' + latitud + ',' + longitud, function(data) {
    alert(data.results[1].formatted_address);
});

//alert("latitud: " + latitud + " longitud: " + longitud + " exactitud: " + exactitud);
//document.write("we received your location");