Показать сообщение отдельно
  #1 (permalink)  
Старый 17.04.2022, 09:21
Аспирант
Отправить личное сообщение для Judgin Посмотреть профиль Найти все сообщения от Judgin
 
Регистрация: 31.05.2021
Сообщений: 32

Получить значения массива, за пределами Promise
Как в моем случае получить значения массива urlArr за пределами Promise? Прочитал что нужно использовать async/await, но как конкретно не понял. Прошу помочь разобраться.

let arr = ['А был ли Каротин?', 'А вы любили когда-нибудь?', 'А ну-ка, дедушки!', 'Автомобиль на крыше', 'Автомобиль, скрипка и собака Клякса', 'Адам и Хева', 'Айболит-66', 'Акселератка', 'Актриса (фильм)', 'Алёнка (фильм)', 'Алёша Птицын вырабатывает характер', 'Алёшкина любовь', 'Альманах сатиры и юмора', 'Ангел в тюбетейке', 'Антон Иванович сердится', 'Антоша Рыбкин', 'Ар-хи-ме-ды!', 'Аринка', 'Артист из Кохановки', 'Аршин мал алан (фильм, 1945)', 'Аршин мал алан (фильм, 1965)', 'Ау-у!', 'Аферисты (фильм, 1990)', 'Афоня'];

for(i = 0; i < arr.length; i++) {
    fetch(`https://ru.wikipedia.org/w/api.php?action=query&prop=imageinfo&titles=${arr[i]}&format=json&iiprop=url&generator=images&origin=*`)
    .then (function(response) {
  	return response.json();
    })
    .then (function(data) {
        urlArr = [];
	let imgObj = Object.values(data.query.pages);
	let imgUrl = imgObj[0].imageinfo[0].url;
	urlArr.push(imgUrl);
    })
}
console.log(urlArr);
Ответить с цитированием