why can't i use setTimeout in scripts?
-
var i = 0; function myLoop() { setTimeout(function() { p422.set(p422.value + 1); i++; if (i <= 20) { myLoop(); } else { i = 0; } }, 400) } if (p420.value) { myLoop(); } setInterval(function() { if (p420.value) { myLoop(); } else { return false } }, 8500)
I need to execute my myLoop() function indefinitely with a time between each execution. So I need to use setTimeout but it doesn't work. I have an error ReferenceError "setTimeout" is not defined.
I would like to know why, and what can I use instead?Thank you in advance
-
@alexandre-buisson setTimeout isn't supported. If you're going to do that you can put delays in-between using
RuntimeManager.sleep( time in milliseconds)
Also note scripts can be ran forever at whatever rate you like. For more control use the cron timer option for "run every" rates.
Scripts and meta points work in two ways. They can "fire" after a datapoint attached to the context point list is updated which causes a triggered update. Or, they can run routinely at set intervals. If needs be, you can always explain what you're wanting to achieve and we can work through it to help you obtain the desired outcome.EDIT: please refrain from double posting, if you put the post in the wrong place the mods can move it for you. Double posting won't earn you any brownie points.
Fox