为什么我无法获得地理定位?

Why I can't get geolocation?

我尝试根据这些docs.

获取当前位置坐标

这是我的做法:

var startPoint = navigator.geolocation.getCurrentPosition((position) => { return position.coords });

但是上面的 roe 被触发后 startPoint 是未定义的。

知道为什么 startPoint 未定义吗?

getCurrentPosition是一个异步函数,它的结果只会在回调函数上设置:

var startPoint;
navigator.geolocation.getCurrentPosition(position => { 
  startPoint = position.coords;
  // use startPoint here
});
// do not use startPoint here