Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.09.2020, 17:49
Аспирант
Отправить личное сообщение для Biotoxsin Посмотреть профиль Найти все сообщения от Biotoxsin
 
Регистрация: 11.04.2019
Сообщений: 74

Содержание функции setInterval и setTimeout
Здравствуйте!

Я никак не могу найти содержание функции setInterval или setTimeout.
То есть именно то как она написана. А именно интересно как идёт отсчёт указанного в них времени.

Может кто-то что-то знает?
Ответить с цитированием
  #2 (permalink)  
Старый 15.09.2020, 18:22
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,704

В любой операционной системе есть функции, которые дают текущее время в виде количества миллисекунд прошедших от какой то фиксированной даты (например от 01.01.1970 00:00)
Когда вызывается функция setTimeout (setInterval), запоминается этот момент.
В начале каждого цикла событий просматриваются все запомненные таймеры и проверяется сколько прошло время и не пора ли ставить целевую функцию в очередь событий

Последний раз редактировалось voraa, 15.09.2020 в 18:24.
Ответить с цитированием
  #3 (permalink)  
Старый 15.09.2020, 19:01
Аспирант
Отправить личное сообщение для Biotoxsin Посмотреть профиль Найти все сообщения от Biotoxsin
 
Регистрация: 11.04.2019
Сообщений: 74

Сообщение от voraa Посмотреть сообщение
В любой операционной системе есть функции, которые дают текущее время в виде количества миллисекунд прошедших от какой то фиксированной даты (например от 01.01.1970 00:00)
Когда вызывается функция setTimeout (setInterval), запоминается этот момент.
В начале каждого цикла событий просматриваются все запомненные таймеры и проверяется сколько прошло время и не пора ли ставить целевую функцию в очередь событий
Это и так понятно. Но КАК? Интересно ведь как написана сама функция!
Ответить с цитированием
  #4 (permalink)  
Старый 15.09.2020, 19:05
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,704

Ну здесь не форум по С++
Ответить с цитированием
  #5 (permalink)  
Старый 15.09.2020, 19:14
Аспирант
Отправить личное сообщение для Biotoxsin Посмотреть профиль Найти все сообщения от Biotoxsin
 
Регистрация: 11.04.2019
Сообщений: 74

Сообщение от voraa Посмотреть сообщение
В любой операционной системе есть функции, которые дают текущее время в виде количества миллисекунд прошедших от какой то фиксированной даты (например от 01.01.1970 00:00)
Когда вызывается функция setTimeout (setInterval), запоминается этот момент.
В начале каждого цикла событий просматриваются все запомненные таймеры и проверяется сколько прошло время и не пора ли ставить целевую функцию в очередь событий
Сообщение от voraa Посмотреть сообщение
Ну здесь не форум по С++
Я спросил о составе функции setTimeout/setInterval то как она написана, её корень. При чём тут С++? Если вы затрудняетесь с ответом, не нужно засорять тему.
Ответить с цитированием
  #6 (permalink)  
Старый 15.09.2020, 19:17
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,704

Ну пускай отвечают те, кто понимает, что такое состав и корень функции.
Ответить с цитированием
  #7 (permalink)  
Старый 15.09.2020, 19:25
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Сообщение от Biotoxsin
При чём тут С++?
alert(setTimeout);

Так можно посмотреть тело пользовательской функции.
[native code] - значит что функция встроенная, это называется API.
Код браузера, как правило C++, посмотреть конкретную реализацию, например Chrome, можно здесь.

Последний раз редактировалось Rise, 15.09.2020 в 19:39.
Ответить с цитированием
  #8 (permalink)  
Старый 15.09.2020, 20:16
Аспирант
Отправить личное сообщение для Biotoxsin Посмотреть профиль Найти все сообщения от Biotoxsin
 
Регистрация: 11.04.2019
Сообщений: 74

Сообщение от Rise Посмотреть сообщение
alert(setTimeout);

Так можно посмотреть тело пользовательской функции.
[native code] - значит что функция встроенная, это называется API.
Код браузера, как правило C++, посмотреть конкретную реализацию, например Chrome, можно здесь.
Благодарю
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
почему нельзя указывать скобки в функции setTimeout() 4aki Javascript под браузер 8 23.08.2017 11:57
Зацикливание функции setTimeout MininAS Общие вопросы Javascript 19 14.10.2015 00:02
выполнения функции после выполнения цепочки setTimeout wingmik Элементы интерфейса 1 20.08.2014 23:58
setTimeout setInterval и др. mycoding Общие вопросы Javascript 6 28.10.2010 17:26
Еще один вопрос по setTimeout setInterval Хранитель Света Общие вопросы Javascript 5 12.03.2009 22:37