Проблемы при попытке перебрать данные API - PullRequest
0 голосов
/ 01 октября 2018

Я пытаюсь выполнить итерацию по массиву, возвращенному из вызова AJAX, для регистрации соответствующих данных для моей программы.

Когда я console.log(response.data.url), все соответствующие данные возвращаются.Однако мне нужно поместить эти данные в массив, чтобы я мог использовать их позже.Я запустил цикл for внутри функции, но когда я проверяю консоль, она возвращает сообщение об ошибке, говорящее:

url не определен

Я не уверен, гдеошибка исходит от первого console.log до того, как функция работает должным образом.Я новичок в программировании.Мой код ниже:

function callAJAX() {
  $.ajax({
    url: userSearchURL,
    method: "GET"
  }).then(function(response) {
    console.log(response.data.url)
    for (i = 0; i <= response.data.length; i++) {
       console.log(response.data[i].url)
    }
  })
}

1 Ответ

0 голосов
/ 01 октября 2018

Так что здесь происходит, что у вас есть объект с ключами.Чтобы перебрать свой объект, например, массив, вам нужно воспользоваться встроенной функцией Object.keys().Попробуйте что-то вроде этого вместо вашей for петли:

Object.keys(response.data).forEach(dataKey => {
  console.log(response.data[dataKey])
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...