@DemonIa

Как добавить элемент в массив переменной, находящейся в Promise?

Здравствуйте. Разбираюсь с промисами, и возник вопрос: каким образом переписать код ниже, чтобы в console.log(storage) конкатенировалось значение response из цикла?

В моем коде (как мне кажется) есть две проблемы:
1. Поскольку переменная storage объявлена через let - то она видна только в том блоке в котором она объявлена.
2. Ну и значение в .then не может быть доступно за пределами промиса.

let core = require('core');

    let storage = '';
    multipleElements.forEach(function(singleElement){
        core.somePromise(singleElement)
            .then(function(response){
              storage = storage + response;
            })
    });

    console.log(storage)


Подскажите, пожалуйста, как это переписать?
Спасибо.
  • Вопрос задан
  • 149 просмотров
Решения вопроса 1
@SeaBreeze876
Front-end разработчик
Promise.all() принимает массив промисов и разрешается массивом результатов
let core = require('core');
    let promises = multipleElements.map(singleElement => core.somePromise(singleElement));
    Promise.all(promises)
        .then(resultArray => console.log(resultArray.join('')))
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект
22 нояб. 2024, в 22:26
3500 руб./за проект