Что выведет код? Запишите строки по порядку, по одной на строку.
В работе: Остатки по трём складам Wildberries приходят за 100–300 мс; for await покажет их в порядке массива, а не в порядке ответа.
Как проверяем
Код не запускаем — предскажите вывод. Пишите строки по порядку, по одной на строку; пробелы по краям не важны. Ответ один на подход: после него показываем разбор.
Источник: на задачах Wildberries: остатки на складах и пункты выдачи. Условие пересказано своими словами.
Давали на собеседовании?
const wait = (ms, v) => new Promise((r) => setTimeout(() => r(v), ms));async function* pickupPoints() {console.log('генератор стартовал');yield wait(300, 'ПВЗ на Ленина');yield 'ПВЗ на Мира';const x = yield wait(100, 'ПВЗ у метро');console.log('в генератор пришло', x);}async function main() {setTimeout(() => console.log('таймер 150 мс'), 150);const stock = [wait(300, 'Коледино'), wait(100, 'Электросталь'), 'Казань'];for await (const s of stock) console.log('склад', s);const gen = pickupPoints();console.log('генератор создан');for await (const p of gen) console.log('пункт', p);const it = pickupPoints();const a = it.next();const b = it.next();console.log((await b).value, '|', (await a).value);}main();console.log('синхронный конец');