@qwentry

Почему axios запрос работает не так как я ожидаю?

Доброго времени суток.
Подскажите пожалуйста, почему запросы axios работают не так, как я ожидаю? Я понимаю, что запрос может выполняться 5-10сек, но как тогда сделать правильно в моем случае?

let obj = [];
    let data = []
    axios.get(url).then(function (response) {
        obj = response.data
        console.log(obj)
        for (var i = 0; i < obj.length; i++) {
            data.push([parseFloat(obj[i].firstName), parseFloat(obj[i].lastName)])
        }
        console.log(data) - тут по итогу лежит то, что мне надо... 
    });
    console.log(data) - а по факту я получаю не то, что было там
    console.log(obj)
  • Вопрос задан
  • 184 просмотра
Решения вопроса 1
MrDecoy
@MrDecoy Куратор тега JavaScript
Верставший фронтендер
оффтоп

Интересно, про это каждый день спрашивают, или всё же с промежутками...

console.log(data) - а по факту я получаю не то, что было там
console.log(obj)

Это выполнится раньше чем запрос.
Если Вам это понятно, то что Вам НЕ понятно?
Либо всё дальше в .then, либо идите дальше осваивать асинхронный javascript, а именно - async\await

Ну и
но как тогда сделать правильно в моем случае

1) Правильно понятие абстрактное и относительное
2) Откуда нам знать что Вы делаете, чтобы предложить варианты? Где критерии для "правильно"?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
AleksandrB
@AleksandrB
Совсем недавно вывел "Hello world"
Потому что
console.log(data) - а по факту я получаю не то, что было там

выполняется до начала выполнения axios.get. Это называется асинхронность.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы