Я передаю массив в функцию, если присутствует «facebookValue», а затем получает идентификатор пользователя и токен доступа.
Функция работает должным образом в том, что идентификаторы могут выводиться в консоль ... но моя проблема, похоже, является возвращаемыми значениями, которые не захватывают переменные, я получаю undefined.возвращаемые значения из функции возвращают неправильные значения
Вот моя функция
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, маркер доступа) выйти undefined
var myReturn = facebook_oAuth(myArray),
uid = myReturn[0],
accessToken = myReturn[1],
credentialsArray = [uid,accessToken];
'UID = response.authResponse.userID,' следует читать вместо 'UID = response.authResponse.userID;' (точка с запятой вместо запятой) –
Узнайте, что означает асинхронный. – epascarello
Благодарю вас, ребята. –