Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   setTimeout 0 (https://javascript.ru/forum/misc/34372-settimeout-0-a.html)

Vampir3 31.12.2012 18:15

setTimeout 0
 
Только что столкнулся с таким, стало интересно, есть ли разница..
В чем отличие между setTimeout(foo,0) и foo()?

9xakep 31.12.2012 19:04

Vampir3,
приведи пример кода. Подумал, что будет небольшая задержка, но ничего вроде не заметил (задержка примерно в 60 µsec)

Хотя может это бред, если что 1ms = 1000 µsec

dmitriymar 31.12.2012 19:05

Цитата:

Сообщение от Vampir3
Только что столкнулся с таким, стало интересно, есть ли разница..
В чем отличие между setTimeout(foo,0) и foo()?

а доки почитать не? если 0 -функция будет запущенна немедленно.

9xakep 31.12.2012 19:19

dmitriymar,
а так func() она как запускается?

dmitriymar 31.12.2012 19:23

в таймауте -бла бла бла если задержка установлена в 0 , то выполнение функции будет запущенно немедленно . да так же и запускается-отличия нет, если не считать того, что таймаут эвалит- вот и твоя задержка.

melky 31.12.2012 20:50

Цитата:

Сообщение от dmitriymar
в таймауте -бла бла бла если задержка установлена в 0 , то выполнение функции будет запущенно немедленно . да так же и запускается-отличия нет, если не считать того, что таймаут эвалит- вот и твоя задержка.

разве она не выбивается из основного потока и задержка становится минимальной? та, которая 15мс в IE, и так далее.

9xakep 31.12.2012 21:06

melky,
я сделал запуск функции, после через 100ms закончил тест:


Как видишь везде отличается на ~60 µsec

dmitriymar 31.12.2012 22:17

Цитата:

Сообщение от melky
разве она не выбивается из основного потока и задержка становится минимальной? та, которая 15мс в IE, и так далее.

Не помню в ком читал, кто то из известных . Написано что запуск сразу если 0.

melky 01.01.2013 02:19

Цитата:

Сообщение от 9xakep
Как видишь

я ничего не вижу, потому что ты ничего не пояснил на картинке :)

Цитата:

Сообщение от dmitriymar
Не помню в ком читал, кто то из известных . Написано что запуск сразу если 0.

значит нужно углубиться в исходники\спеку.

напишите ещё один любой пост в теме, чтобы я видел её в списке новых, а то я вряд ли утром вспомню что-либо :)

nerv_ 01.01.2013 12:51

Цитата:

Сообщение от dmitriymar
а доки почитать не? если 0 -функция будет запущенна немедленно.

http://learn.javascript.ru/events-an...-settimeout-0
http://learn.javascript.ru/settimeou...timeout-func-0


Часовой пояс GMT +3, время: 00:41.