Бесконечный цикл с асинхронной функциейJavascript

Форум по Javascript
Гость
Бесконечный цикл с асинхронной функцией

Сообщение Гость »


Мне нужно получить данные с сервера в бесконечном цикле. Этот код генерирует рекурсию, это правильно?

Мой код (код обновлен):
function Pause(delay) { return new Promise(r => setTimeout(r, Delay)) } асинхронная функция fetchData(url, пытается = 5) { пытаться { константный ответ = ожидание выборки (url); если ( !response.ok ) выдать новую ошибку («Ошибка запроса»); const contentType = response.headers.get('content-type'); if ( !contentType || !contentType.includes('application/json')) выбросить новый TypeError («не JSON») const jsonData = ожидайте ответа.json(); вернуть jsonData; } поймать (ошибиться) { console.error('поймать ошибку:', err, 'пытается налево', пытается); если (пытается == 0) выдать новую ошибку(ошибку); дождаться паузы (1500); вернуть fetchData(url, пытается - 1); } } функция бесконечного цикла() { fetchData('test.json').then(d => {console.log(d); пауза(1000).then(infinityLoop); }); } бесконечный цикл();

Вернуться в «Javascript»