0
我将数组传递给一个函数,如果存在“facebookValue”,则获取用户ID和访问令牌。
该函数正常工作,因为该ID可以输出到控制台...但我的问题似乎是返回值没有捕获变量,我得到了未定义。函数的返回值返回错误的值
这里是我的功能
function facebook_oAuth(arr){
var checkArray = $.inArray('facebookValue', arr),
uid,
accessToken;
if (checkArray == -1) {}
else{
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
uid = response.authResponse.userID,
access_token = response.authResponse.accessToken;
console.log(uid + " ? " + accessToken); // ok
}
return [uid, access_token];// doesnt return the values from above
});
}
};
而且我获得这样的值,但值(UID,的accessToken)出来undefined
var myReturn = facebook_oAuth(myArray),
uid = myReturn[0],
accessToken = myReturn[1],
credentialsArray = [uid,accessToken];
'UID = response.authResponse.userID,'应阅读代替'UID = response.authResponse.userID;'(分号,而不是逗号) –
了解什么是异步表示。 – epascarello
谢谢你们。 –