просроченные интервалы могут выполняться друг за другом без задержки, поэтому чаще всего используют таймауты
|
Octane,
Че то не верится. Какая разница? Можещь написать тестовый пример, простенький? |
это старая избитая тема, в интернете полно статей
Цитата:
перевод: http://habrahabr.ru/post/138062/ ну и еще до кучи http://alljs.ru/articles/timeout/setinterval |
Octane,
Почему же тогда тут setInterval не перекрывает setTimeout? st=function(){return setTimeout(function(){console.log("setTimeout"); timeoutId=st()}, 3)} si=function(){return setInterval(function(){console.log("setInterval")}, 3)} stop=function(){setTimeout(function() {clearTimeout(timeoutId); clearInterval(intervalId)}, 3000)} stop() timeoutId=st() intervalId=si() i=100000000 console.time("cycle") while(i--){} console.timeEnd("cycle") // cycle: 1796ms // setTimeout // setInterval // setTimeout // setInterval // setTimeout // setInterval // ... |
мне лень писать test case)
Resig говорит про время исполнения колбека, наверное как-то так http://habrahabr.ru/post/138062/#comment_4604133 пример будет выглядеть |
Цитата:
В идеале тут нужно использовать requestAnimationFrame. К слову, схема его использования схожа именно с setTimeout. |
Цитата:
Вообще, выглядит как баг. Видимо, побочный эффект от оптимизаций. |
function randomRGBColor() { return Math.round(Math.random() * 0xFFFFFF).toString(16); } Вот такой вот HEX вариант ) |
Цитата:
|
Цитата:
|
Часовой пояс GMT +3, время: 16:30. |