Javascript: изменить глобальную переменную локально - PullRequest
0 голосов
/ 01 июня 2018

Простой вопрос.Просто эксплицитный взгляд:

 var token = "12345"

function einloggen(){
    var test = particle.login({username: userName, password: passWord});
    test.then(
    function (data) {
            token = data.body.access_token;
            console.log('tokenoutprint1:', token);
            },
    function (err) {
            console.log('LoggingIn Failed', err);
            }
);
console.log('tokenoutprint2:', token);

}
einloggen();

после этого я хочу повторно использовать «новый» токен в другой функции ...

callFunctionAVC(token);

Третья последняя строка напечатает меня 12345.Но я хочу напечатать «новый» токен, определенный в. Как и в «обычном» java

Я не знаю почему, потому что первый console.log показывает мне правильный токен.

ТАК, КАК Я ПОЛУЧИЛ "ЖЕТОН" ДЛЯ ГЛОБАЛЬНОЙ ПЕРЕМЕННОЙ.Вот мой "настоящий" вопрос.Пожалуйста, присылайте полные коды только в противном случае я не получу его.

Извините, что не профессионал, я только учусь в школе.

Привет.

1 Ответ

0 голосов
/ 01 июня 2018

Функция einloggen не вызывается (видимым образом) перед console.log, что означает, что вы устанавливаете token = "12345", console.log(), и через некоторое время вы можете вызывать или не вызывать функцию einloggen.

Я думаю, что вы хотели сделать:

function einloggen() {
    //your code
}
einloggen(); // Execute the method
console.log(token);

Возможно, это не сработает так, как ожидалось, потому что вы используете Promises в своей функции einloggen.

Вы также можете попробовать запустить console.log(token) с консоли разработчика вашего браузера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...