Mesuti, те интервалы что вы задаете в фукнциях setTimeout и setInterval имеют на самом деле приблизительные значения и им нельзя доверять если нужно засечь ровно 2 секунды например.
В современном вебе уже не имеет смысла использовать подобные библиотеки, когда у вас есть гораздо более современные и мощные инструменты вроде React, Vue, Angular и т.д.