title: Why javascript setTimeout delay is not working and setInterval is too slow
body: <pre><code>    function paint(ctx, canvas) {
      var veces = 0;
      var interval = 1000;
      dibujo();
      function dibujo() {
          var lado1 = Math.floor((Math.random() * 300) + 1);
          var lado2 = Math.floor((Math.random() * 300) + 1);
          ctx.strokeStyle = '#' + Math.floor(Math.random() * 16777215).toString(16);
          ctx.strokeRect((canvas.width / 2) - (lado1 / 2),
              (canvas.height / 2) - (lado2 / 2),
              lado1,
              lado2);
          veces++;
          if (veces &lt; 1000) {
              setTimeout(dibujo(), interval);
          }
      }
  }
  </code></pre>
  
  <p>My complete code for setTimeout <a href="http://jsfiddle.net/gsubiran/HB5Br/" rel="nofollow" title="setTimeout example">FIDDLE</a></p>
  
  <p>and</p>
  
  <p>My complete code for setInterval <a href="http://jsfiddle.net/gsubiran/G6ZyS/" rel="nofollow" title="setInterval example">FIDDLE</a></p>
  
  <p>What i'm doing wrong?</p>