JavaScript-从另一个函数访问变量

JavaScript-从另一个函数访问变量,javascript,html,Javascript,Html,我是StackOverflow的新手,所以如果我犯了错误,请原谅我 我有个问题。当我试图从另一个函数访问变量时,结果是“null” uluru的纬度和经度完全填充在地理编码回调函数中,该回调函数在加载函数时不一定会使其可用,因此,当这些值可用时,您可以使用回调来设置地图中心 function initAutocomplete() { var latitude = 0; var longitude = 0; var uluru = {lat: latitude, lng:

我是StackOverflow的新手,所以如果我犯了错误,请原谅我

我有个问题。当我试图从另一个函数访问变量时,结果是“null”


uluru
的纬度和经度完全填充在地理编码回调函数中,该回调函数在加载函数时不一定会使其可用,因此,当这些值可用时,您可以使用回调来设置地图中心

function initAutocomplete() {
    var latitude = 0;
    var longitude = 0;
    var uluru = {lat: latitude, lng: longitude };

    var geocoder = new google.maps.Geocoder();
    var address = document.getElementById("geocode").value;

    geocoder.geocode({'address':address}, function getCoordinates( results, status ) {
        if( status == google.maps.GeocoderStatus.OK ) {
            latitude = results[0].geometry.location.lat();
            longitude = results[0].geometry.location.lng();

            map.setCenter( new google.maps.LatLng( latitude,longitude ) ;
        } 
    });

    var map = new google.maps.Map(document.getElementById('map'), {
        center: uluru,
        zoom: 17,
        mapTypeId: 'roadmap'
    });
}

访问变量的简单示例:

<script>
var a = 10;
var c;

function aa() {
  document.write("func aa ");
  var b = 20;
  c = b;
  document.write(a + b);
}

function bb() {
  document.write("func bb ");
  document.write(c);
}

aa();
document.write(" ");
bb();    

var a=10;
var c;
函数aa(){
文件。编写(“func aa”);
var b=20;
c=b;
文件编写(a+b);
}
函数bb(){
文件。编写(“func bb”);
文件。编写(c);
}
aa();
文件。填写(“”);
bb();

来自

访问地理编码服务是异步的

这意味着您的函数在
uluru
对象的日化之后被调用


您应该在函数
getCoordinates

中对地图和
uluru
对象进行序列化,这与php和html有什么关系?请把那些标签取下来。还有什么问题吗?我们说的是哪一行?哪个变量被设置为null?@KIKOSoftware好的,我会这么做。@Keith我想从变量luru中的函数getCoordinates()中获取纬度和经度
<script>
var a = 10;
var c;

function aa() {
  document.write("func aa ");
  var b = 20;
  c = b;
  document.write(a + b);
}

function bb() {
  document.write("func bb ");
  document.write(c);
}

aa();
document.write(" ");
bb();