Показать сообщение отдельно
  #1 (permalink)  
Старый 06.11.2016, 12:28
Аспирант
Отправить личное сообщение для -VenoM- Посмотреть профиль Найти все сообщения от -VenoM-
 
Регистрация: 31.10.2016
Сообщений: 44

Promise и область видимости переменных
По ходу изучения работы с асинхронными ф-циями, возник вопрос по поводу области видимости переменных, которые присваиваются в теле Promise.

Код:
var name;
var semaphore1 = new Promise(function(resolve,reject){
    connection.query(strQuery,function(err,rows) {
        resolve(rows);
        name=rows;
    });
});
semaphore1.then(
    function (result)
    {
        console.log("Fulfilled: " + result[0].Name + " " + name[0].Number)
    },
    error => console.log("Rejected: " + error.message)

);
Т.е. получается, что после того как получаем данные по асинхронному запросу переменная "name" уже "undefined". А мне необходимо с ней работать. Есть, конечно, вариант выполнять все операции в .then, но хотелось бы прояснить этот момент.
Ответить с цитированием