Для вас может быть лучше выполнить рефакторинг вашего кода, чтобы в памяти был счетчик, отслеживающий, сколько секунд должен иметь таймер (ie 120, когда он начинается через 2 минуты, затем до 60, когда он идет до 1 минуты). Эту настройку будет проще кодировать в UX-дружественный таймер (MM: SS), поскольку вы будете всегда конвертировать в одну сторону, и любые добавления или вычеты в этот код будут просто вноситься в этот счетчик и затем переходить к вашим преобразованиям в пользовательский интерфейс.
В нынешнем виде вы находите время, оставшееся внутри вашего HTML, вычитаете временные единицы (считая секунды и минуты), а затем выполняете все свои выводы. Это требует больше вычислений, чем действительно необходимо. Это также делает реальную боль до go с 1:00 до 0: 59.
Тем не менее, вы должны быть предупреждены, что если вы отслеживаете эту переменную счетчика на стороне клиента, это может быть манипулировать кем-то умным, чтобы дать им больше времени, чем предполагалось. Вы должны быть осторожны, как вы гарантируете целостность таймера, будь то в этом решении или в другом.