Общее решение описано в [аналогичной задаче с setInterval](/task/clock-setinterval). Способ через `setTimeout` -- по сути, такой же, только функция `update` каждый раз ставит себя в очередь заново. Заметим, что в данном случае целесообразнее использовать `setInterval`, т.к. нужна не задержка между запусками, а просто запуск каждую секунду. [edit src="solution"]Открыть решение в песочнице[/edit]