I am using the following to pause the javascript for a few seconds:
setTimeout(start_countdown(),3000);
It does not work, the function is called regardless of the seconds. The following function does however work, which doesnt use a function.
setTimeout(alert('hi'),3000);
How can I solve this?
You need to pass a function reference. You are passing a function’s return value.
The difference is this: one is a blueprint of the function you want to happen, the other means you are executing the function immediately and passing its return value to
setTimeout.If you want to do something more complex than simply call a named function, OR you want to pass a param to the named function, you’ll need to instead pass an anonymous function to the timeout and call your function within that: