Stalker_RED: документирован ли этот момент для основных браузеров? Что происходит с приоритетом web worker'ов от неактивных вкладок? Можно ли влиять на приоритет скрипта или таймера?
sim3x: нее, тут же между действительно паттерновыми событиями может быть шум - включения тех же событий, но не попадающих в паттерн. И потом, изначально неизвестен вид паттерна – то ли это А-Б-А, то ли какойнибудь АББА. Как неизвестны и его временные параметры – то ли 50-35-5 сеекунд до события Й, то ли как-то ещё..
sim3x: жажду замечаний кого-то, кто сам решал аналогичную задачу недавно.. Списать и понять всегда приятнее, чем пройти курс, понять и написать не сразу что-то работающее )
Yuriy: перебирать диапазоны придётся так и так. Зато в отличие от, скажем, reduce() тут перебор прекращается, как только число попадает в очередной диапазон.