Какова потребность в функции JavaScript getUtcustear ()?
-
18-09-2019 - |
Вопрос
Есть ли какой -нибудь реальный случай, где getUtcuplyear () отличается от electleear () в JavaScript?
То же самое касается:
getutcmonth () против getmonth ()
getutcdate () vs getDate ()
Я что -то здесь упускаю?
РЕДАКТИРОВАТЬ:
Видеть Документация getUtcfyear ().
Есть ли какой -нибудь реальный случай, где getUtcuplyear () отличается от electleear () в JavaScript?
Решение
Да, около Нового года. Если ваш TZ составляет -12, значение отличается от 31 декабря, 12:00 до полуночи.
Другие советы
Методы Getutc ... () возвращают дату и время в часовом поясе UTC, в то время как другие функции возвращают дату и время в локальном часовом поясе компьютера, на котором работает скрипт.
Иногда удобно иметь дату и время в местном часовом поясе, и иногда удобно иметь дату и время в часовом поясе, который не зависит от местного часового пояса компьютера.
Есть способы преобразования между часовыми поясами в JavaScript, но они громоздки.
Итак, я думаю, это просто для удобства.
Функции, которые вы перечисляете, по существу сообщают о времени в разных часовых поясах, поэтому иметь случай, где getUTCFullYear()
будет отличаться от getFullYear()
Это будет вечером 31 декабря, если вы живете к западу от Гринвичского Меридиана.
Например, в вашем местном часовом поясе время может быть 9 вечера, но в UTC это уже 2 часа ночи 1 января, так что:
var d = new Date();
d.getFullYear() == 2009 //True
d.getUTCFullYear() == 2010 //True
Это сбивает с толку, поскольку методы работают на Date
объект, а не сообщать о текущем времени UTC. Но метод гласит, что если это время здесь, какой год он в часовом поясе UTC. Таким образом, в течение 364,75 дней годов, сообщаемых двумя методами, будут одинаковыми.
Как и 31 декабря до 1 января, это происходит в разное время в разных частях света. Следовательно, время UTC будет отличаться от, например, местного времени в Новой Зеландии - поэтому в какой -то момент electionear () будет отличаться от getUtcilear () на 1.