Та все получится. От например как я сделал
var time = 0;
timer1();
setInterval(timer1, 500);
setInterval(timers_protection, 500);
function timer1 () {
time = getSeconds();
console.log('timer1');
}
function timers_protection () {
if (getSeconds() - time > 1) {
timer1();
setInterval(timer1, 500);
}
}
function getSeconds() {
var now = new Date();
return now.getSeconds();
}
Просто думал, может есть не такой кривой способ