files/en-us/web/api/workerglobalscope/setinterval/index.md
{{APIRef("HTML DOM")}} {{AvailableInWorkers("window_and_worker")}}
[!WARNING] When the
codeparameter is used, this method dynamically executes its value as JavaScript. APIs like this are known as injection sinks, and are potentially a vector for cross-site-scripting (XSS) attacks.You can mitigate this risk by always assigning {{domxref("TrustedScript")}} objects instead of strings and enforcing trusted types. See Security considerations in
Window.setInterval()for more information.
The setInterval() method of the {{domxref("WorkerGlobalScope")}} interface repeatedly calls a function or executes a code snippet, with a fixed time delay between each call.
It is commonly used to set a delay for functions that are executed again and again, such as animations. You can cancel the interval using {{domxref("WorkerGlobalScope.clearInterval", "clearInterval()")}}. See {{domxref("Window.setInterval()")}} for more information.
Note that if you wish to have your function called once after the specified delay, use {{domxref("WorkerGlobalScope.setTimeout", "setTimeout()")}}.
setInterval(code)
setInterval(code, delay)
setInterval(func)
setInterval(func, delay)
setInterval(func, delay, param1)
setInterval(func, delay, param1, param2)
setInterval(func, delay, param1, param3, /* …, */ paramN)
func
delay milliseconds.
The first execution happens after delay milliseconds.code
delay milliseconds.
This can be used instead of passing a function, but is strongly discouraged for the same reasons that make using {{jsxref("Global_Objects/eval", "eval()")}} a security risk.delay {{optional_inline}}
Window.setInterval for details on the permitted range of delay values.param1, …, paramN {{optional_inline}}
A positive integer (typically within the range of 1 to 2,147,483,647) that uniquely identifies the interval timer created by the call.
This identifier, often referred to as an "interval ID", can be passed to {{domxref("WorkerGlobalScope.clearInterval", "clearInterval()")}} to stop the repeated execution of the specified function.
code can't be parsed as a script.code parameter is set to a string when Trusted Types are enforced by CSP and no default policy is defined.
It is also thrown if the first parameter is not one of the supported types: a function, string or TrustedScript.See {{domxref("Window.setInterval", "setInterval()")}} for examples.
{{Specifications}}
{{Compat}}
setInterval which allows passing arguments to the callback in core-js