Считать текущее время, рассчитать количество секунд до следующего, когда в секундах появится ': 31', затем используйте setTimeout с соответствующей задержкой. Вы можете использовать что-то вроде этого:
var atSeconds = 31;
var secondsLeft = atSeconds - new Date().getSeconds();
if (secondsLeft <= 0) secondsLeft += 60;
setTimeout(foo, secondsLeft * 1000);
Не забудьте вызвать его снова в функции foo
, чтобы он повторялся.