Сохранить xhr.responseURL в массив

У меня есть массив URL-адресов, для которых мне нужно найти перенаправления. Я использовал XMLHttpRequest / xhr.responseURL, чтобы сделать это. Когда я печатаю результаты в консоль, перенаправленные URL-адреса отображаются должным образом. Однако, когда я пытаюсь сохранить эти перенаправленные URL-адреса в массив, массив остается пустым. Как я могу сохранить их в массив?

Обновлено с кодом

var imageDestinations = [];

function imageDestinationGrabber(imageSource) {
    var xhr = new XMLHttpRequest();
    xhr.open('GET', imageSource, true);
    xhr.onload = function() {
    imageDestinations.push(xhr.responseURL).trim());
    console.log((xhr.responseURL).trim());
    };
    xhr.send(null);
}

Журнал консоли работает, но массив остается пустым.

1 ответ

У вас была пара синтаксических проблем, которые нарушали ваш код. У вас была лишняя скобка в конце массива.

imageDestinations.push(xhr.responseURL).trim());

Что пытается .trim() .push() вызов

Вот фиксированный код:

var imageDestinations = [];

function imageDestinationGrabber(imageSource) {
    var xhr = new XMLHttpRequest();
    xhr.open('GET', imageSource, true);
    xhr.onload = function() {
        imageDestinations.push( xhr.responseURL.trim() );
     console.log( xhr.responseURL.trim() );
 };
 xhr.send(null);
}

Другие вопросы по тегам