Приведённый код упрощён, чтобы не писать лишнего. Есть переменная smth, которая в одной функции доступна нормально, а в другой - она почему-то underfined, и я не понимаю почему. Из-за чего это может быть? Где я косячу ?
var smth;
function func1(){
let x = new XMLHttpRequest();
x.open("GET", url)
x.send();
x.onreadystatechange = function (){
if (x.readyState == 4){
for (let j=0; j<5;j++){
func2();
console.log(smth) //Здесь smth - underfind
}
}
}
}
function func2(){
let request = new XMLHttpRequest();
request.open("GET", url)
request.send();
request.onreadystatechange = function (){
if (request.readyState == 4){
smth = request.response;
console.log(smth); //Здесь smth доступна
}
}
}
for (let i=0; i<6; i++){
func1();
}