Javascript 如何从JS函数外部检索值

Javascript 如何从JS函数外部检索值,javascript,function,geolocation,Javascript,Function,Geolocation,我一直在努力使用谷歌的地理定位API。 我有一个功能,可以带来带有城市名称的警报消息: geocoder.geocode({ 'latLng': latlng }, function Test(results, status) { if (status == google.maps.GeocoderStatus.OK) { if (results[1]) { for (var i = 0; i < results[0]

我一直在努力使用谷歌的地理定位API。 我有一个功能,可以带来带有城市名称的警报消息:

geocoder.geocode({ 'latLng': latlng }, function Test(results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
            if (results[1]) {
                for (var i = 0; i < results[0].address_components.length; i++) {
                    for (var b = 0; b < results[0].address_components[i].types.length; b++) {
                        if (results[0].address_components[i].types[b] == "locality") {
                            city = results[0].address_components[i];
                            break;
                        }
                    }
                }
                alert(city.short_name)
            }
        } 
    });
geocoder.geocode({'latLng':latLng},功能测试(结果,状态){
if(status==google.maps.GeocoderStatus.OK){
如果(结果[1]){
对于(var i=0;i

我想检索
city.short_name
,稍后将其用作字符串。如何操作?

如果您不介意污染全局变量空间,可以使用:

window.newVar = city.short_name

您必须将其设置为全局变量。或者从此函数调用一个函数并将其作为参数传递。

Mm,我尝试过这样做,但控制台仍然抱怨当我在函数外部访问它时,
newVar
未定义。谢谢,我尝试在我在外部创建的函数中传递该变量,并且它工作正常。当然可能会很乱,但没那么重要,其实也没那么乱。避免设置全局变量,这是一件好事!