Бесконечный цикл с асинхронной функцией ⇐ 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); }); } бесконечный цикл();
Мне нужно получить данные с сервера в бесконечном цикле. Этот код генерирует рекурсию, это правильно?
Мой код (код обновлен):
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); }); } бесконечный цикл();
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Перехват ошибок из асинхронной функции в блоке try..catch вне асинхронной функции
Anonymous » » в форуме Javascript - 0 Ответы
- 41 Просмотры
-
Последнее сообщение Anonymous
-