Просмотр всех тайм-аутов/интервалов в JavaScript?

Инструменты> Параметры> Текстовый редактор> Общие> Показать группу> [] Выделить текущую строку (снять отметку)

78
задан Omar Kooheji 23 June 2017 в 21:00
поделиться

1 ответ

Я не думаю, что есть способ перечислить активные таймеры, но вы можете переопределить window.setTimeout и window.clearTimeout и заменить их с вашими собственными реализациями, которые выполняют некоторое отслеживание, а затем вызывают оригиналы.

window.originalSetTimeout = window.setTimeout;
window.originalClearTimeout = window.clearTimeout;
window.activeTimers = 0;

window.setTimeout = function(func, delay) {
    window.activeTimers++;
    return window.originalSetTimeout(func, delay);
};

window.clearTimeout = function(timerID) {
    window.activeTimers--;
    window.originalClearTimeout(timerID);
};

Конечно, вы можете не всегда вызывать clearTimeout , но это, по крайней мере, даст вам способ отслеживать, что происходит во время выполнения.

69
ответ дан 24 November 2019 в 10:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: