В предоставленном вами коде первая строка:
var currentdate = new Date();
Конструктор объекта Date
вызывается без каких-либо параметров и поэтому инициализируется с отметкой времени, имеющей то же значение, что и Date.now()
. Это значение Unix отметка времени , содержащее миллисекунды с 1970-01-01 00:00:00.000 UTC
(без учета високосных секунд). Это строго UT C на основе. Часовой пояс системы не участвует в построении, а объект Date
не хранит системный часовой пояс.
В него вовлечены только системные часы . Каждая компьютерная система имеет внутренние часы, которые могут возвращать текущее время UT C. Эти часы чаще всего синхронизируются с часами других компьютеров через NTP, PPTP или аналогичные механизмы. Это зависит от компьютера, хотя. Например, если настроено «автоматическое установление времени», компьютеры Windows будут получать время либо с сервера NTP publi c на Inte rnet, либо с контроллера домена в локальной сети, в зависимости от сети. конфигурации. Однако автономный компьютер, который не настроен на автоматическую установку времени, может иметь очень разные значения часов.
Таким образом, два данных компьютера, вызывающих new Date()
(или Date.now()
), будут вероятными получить аналогичные значения, если их часы синхронизированы правильно, но не гарантировано. Нет никакого сетевого вызова, только вызов на локальные системные часы.
В остальном коде вы вызываете функции getMonth
, getFullYear
, getHours
, getMinutes
и getSeconds
. Каждый из этих вызовов функций будет независимо использовать метку времени на основе UT C объекта Date
и часовой пояс, настроенный на компьютере, на котором выполняется код. Если код выполняется в веб-браузере, то применяется часовой пояс компьютера пользователя. Если код выполняется на сервере, то применяется часовой пояс сервера.
Опять же, важно помнить, что объект Date
отслеживает только одно значение цифры c - миллисекунды с эпохи Unix (без учета високосных секунд). Вы можете увидеть это значение напрямую, вызвав d.getTime()
или d.valueOf()
объекта Date
(здесь он называется d
), или приведя значение к Number, как в +d
. Часовой пояс не является частью состояния объекта и не выполняет сетевые вызовы самостоятельно.