watches/timeouts/intervals do not interrupt other code that is running when the timeout/interval happens or the watched pin changes - they get queued up, and run after the other code is done.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
You don't have to to anything like that.
watches/timeouts/intervals do not interrupt other code that is running when the timeout/interval happens or the watched pin changes - they get queued up, and run after the other code is done.