Поскольку система Windows работает почти 49,7 дней, внутренний счетчик миллисекунд Windows приближается к 2 ^ 32. Ошибка в Internet Explorer 8, кажется, имеет арифметическое переполнение при вычислении, когда запускать событие setInterval или setTimeout. Например, если вы находитесь в 49-й день безотказной работы и вызываете
setInterval(func, 86400000); // fire event in 24 hours
, функция будет вызываться немедленно, а не через 24 часа.
Эта ошибка, вероятно, возникнет в любое время после 25 дней безотказной работы (2 ^ 31 миллисекунды) если в setInterval или setTimeout передается достаточно большое число. (Я проверил только 49-й день.)
Вы можете проверить количество дней безотказной работы, введя "сервер сетевой статистики" в командной строке.
Есть ли обходной путь?