По ходу изучения работы с асинхронными ф-циями, возник вопрос по поводу области видимости переменных, которые присваиваются в теле 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, но хотелось бы прояснить этот момент.