0

我想不通这个...

我想要:

声明一个变量,运行一个更改该变量值的函数,然后警告新值的值。

像这样:

function loadApp(){
    FB.api('/me', function(response) {
            var posLat;
            getLocation();
        console.log(posLat);
    });
}


    function getLocation(){

        posLat = "hey";

}

警报应显示 4 但只是未定义警报。我是不是很傻?

4

1 回答 1

4

posLat是在函数内部定义的,因此使其成为不能在其周围范围之外使用的本地函数。这就是为什么getLocation不能修改它。事实上,它正在创建一个posLat在窗口对象上调用的全局变量。正如我帖子上的评论所建议的,设置posLat为返回值getLocation

var posLat = getLocation();

...

function getLocation() {
    return "hey";
}
于 2012-11-30T01:16:15.803 回答