无法在函数内部设置值

问题描述

我无法在函数内部设置值。当我尝试提醒该值时,我得到:未定义。如何将这个价值带到外面?

var startTrasyLat;
            
L.esri.Geocoding.geocode()
                .text(document.getElementById('start').value)
                .run(function (err,results,response) {
  if (err) {
    console.log(err);
    return;
  }
                  
  startTrasyLat = results['results'][0].latlng.lat;              
});
alert(startTrasyLat);

解决方法

好像您正在尝试调用异步函数。您应该将警报放在上述函数中,如下所示:

var startTrasyLat;

L.esri.Geocoding.geocode().text(document.getElementById('start').value).run(function (err,results,response) {
  if (err) {
    console.log(err);
    return;
  }

  startTrasyLat = results['results'][0].latlng.lat;
  alert(startTrasyLat);
});