title: Javascript setTimeout timing reliability
body: <p>I have recently started exploring Javascript in more detail, and how it executes within the browser. Specifically, the setTimeout function.</p>
  
  <p>My understanding is that calling <code>setTimeout(foo,x)</code>
  will pass a handle to foo to be executed after x milliseconds. How reliable is this timing? Obviously if another long-running script is still executing after x milliseconds then the browser won't be able to call foo, but can I be absolutely certain that <code>setTimeout(foo,101)</code> will always be executed after <code>setTimeout(foo,100)</code>?</p>