Если вы устанавливаете setTimeout(func, t), то
через t миллисекунд выполнится функция func()
один раз. Если вы устанавливаете setInterval(func, t), то
каждые t миллисекунд будет выполняться функция func. Что бы не вернула функция func() интервал не остановится (если конечно нет критического исключения), остановить интервал можно используя функцию clearInterval.
Параметр func должен быть ссылкой на функцию или строкой с вызовом, так что форма записи setTimeout(func(), t) и setInterval(func(), t) - неверная, насколько я понимаю. Вы можете самостоятельно это проверить запустив, например, такой код:
function a() {
alert(1);
}
setTimeout(a(), 10000000);
Правильно писать либо setInterval(func, t), либо setInterval("func()", t), либо setInterval(function() {func()}, t). И тоже самое справедливо и для setTimeout.