@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)
  • Вопрос задан
  • 94 просмотра
Решения вопроса 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. Это называется асинхронность.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы