我不知道这个...
我想要:
声明一个变量,运行一个更改该变量值的函数,然后警告新值的值。
像这样:
function loadApp(){
FB.api('/me', function(response) {
var posLat;
getLocation();
console.log(posLat);
});
}
function getLocation(){
posLat = "hey";
}
警报应显示4,但警报未定义。我是不是很蠢?
最佳答案
posLat
是在函数内部定义的,因此使它成为无法在其环绕范围之外使用的局部函数。这就是为什么getLocation
无法修改它的原因。实际上,它正在窗口对象上创建一个名为posLat
的全局变量。正如我对帖子的评论所建议的那样,将posLat
设置为getLocation
的返回值:
var posLat = getLocation();
...
function getLocation() {
return "hey";
}