Light-electric.com

IT Журнал
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Настройка времени в браузере

Что влечет за собой ошибка часов в Google Chrome

При использовании браузера Google Chrome может возникнуть неприятности, связанные с неправильным временем.

Из-за этого могут возникнуть трудности с подключением к интернету , незащищенные подключения и многое другое.

Как же убрать эту ошибку? Все достаточно просто – нужно следовать инструкции.

Как дата и время влияют на работу браузера

Ошибка часов в Гугл Хром оказывает большое влияние на подключение к сайтам через браузер, а именно – отсутствие подключения. В данном случае происходит из-за того, что время на компьютере отличается от времени на сервере, в результате чего возникает сбой и сайт не открывается. Они могут сбиваться самостоятельно, например, при:

  • При инсталляции программного обеспечения;
  • Во время различных обновлений системы;
  • Неправильной синхронизации календаря компьютера с интернетом.

Также такая неисправность может возникнуть в мобильной версии Хрома на смартфонах. Данная проблема является самой частой и распространенной. Существуют другие причины возникновения незащищенного соединения.

Другие причины незащищенного соединения

Как уже было сказано выше имеются иные источники возникновения трудностей, связанных с незащищенном соединении, при котором невозможно пользоваться услугами тех или иных сайтов. К ним относятся:

  1. Расширения, которые блокируют подключение, к ним относятся различные дополнительные опции антивирусов и подобных программ;
  2. Устаревшая версия сборки Windows XP, владельцев компьютеров с операционной системой Windows 7 и выше данный вопрос не касается;
  3. Проблемы, связанные с работой Гугл Хром;

Ну и ко всем вышеперечисленным причинам добавляется еще неправильный календарь. Для того, чтобы устранить такие неполадки потребуется немного внимания и времени.

Варианты решения

  1. Если проблема кроется в неправильных числах календаря– то здесь необходимо лишь поставить точную дату и время. Для этого нужно нажать на время, которое расположено в левом нижнем углу, затем выбрать «изменение настроек …», откроется окно, где нужно нажать на пункт «изменить дату и время» и выставить точные параметры;
  2. Если трудность возникает из-за расширений, то их нужно просто выключить, для этого нужно зайти в настройки, выбрать пункт «Расширения», где будут представлены установленные расширения – нужно убрать галочки и выключить их;
  3. Если на компьютере установлена операционная система Windows XP со сборкой SP2 , то скорее всего проблема кроется именно в этом, следует обновиться сборку до SP3, сделать это можно, купив официальную версию или скачав пиратскую;
  4. Порой такие затруднения могут появляться, когда браузер неправильно установлен. Решить ее можно с помощью переустановки, для этого надо удалить программу через панель управления, а затем заново произвести установку.

Также может помочь перезагрузка компьютера, если перечисленные способы устранения не помогли, то вполне возможно, что неисправно железо компьютера и нужна разборка с полной диагностикой, которую можно провести в сервисном центре, самостоятельное диагностирование неисправности нежелательно.

Таким образом, неправильные часы могут повлечь такую сложность как «незащищенное подключение» при работе с Гугл Хром. Решить ее можно довольно быстро и просто, справиться с этим сможет абсолютно каждый.

Почему часы спешат/отстают в Google Chrome – как исправить?

Ошибка «Часы спешат/отстают» возникает при попытке открыть сайт в Google Chrome, которая препятствует установке защищенного соединения из-за неправильных системных значений времени и календаря. При этом в других браузерах сайт открывается без ограничений.

Во многих случаях ошибку можно решить путем установки точных значений даты и времени. Кроме того, проблема возникает из-за слабой батареи CMOS, которая не сохраняет настройки после перезапуска. Иногда она может произойти при истечении срока действия SSL-сертификата или повреждении кэша.

Настройка времени и даты

В большинстве случаев сообщение с кодом «Часы спешат/отстают» (NET ERR_CERT_DATE_INVALID) препятствует открытию сайта, когда дата и время на компьютере или мобильном устройстве указаны неверно. Большинство браузеров выдают только предупреждение о неправильном значении, поскольку это может нарушить безопасность подключения, в отличие от Chrome, который полностью блокирует доступ к странице.

Щелкните правой кнопкой мыши на часы в системном трее и выберите настройки времени и даты.

Переместите переключатели в положение включено для автоматической установки времени и часового пояса. Затем нажмите «Синхронизировать».

После перезагрузите компьютер и проверьте, сохраняются ли точные значения. Если время сбрасывается после перезагрузки, перейдите к следующему шагу.

Замена батареи CMOS

Если после применения первого решения удавалось открывать сайты, но со временем опять сталкиваетесь с ошибкой «Часы спешат/отстают», то, возможно, она связана со слабой батареей CMOS. Она предназначена для питания памяти на материнской платы, в которой хранятся установки BIOS. Если она неисправна, то память сбрасывается и, следовательно, не сохраняются установление значения времени.

Для ее замены отключите питание компьютера, снимите крышку с системного блока и найдите батарею на материнской плате. Аккуратно извлеките из гнезда с помощью отвертки и замените ее на рабочую.

После перезагрузки компьютера проверьте, сохраняются ли настройки.

Очистка кэша браузера

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

В Google Chrome кликните на кнопку меню и перейдите в Настройки.

Прокрутите страницу вниз и кликните на «Дополнительные», чтобы развернуть расширенные параметры.

В разделе Конфиденциальность и безопасность щелкните на «Очистить историю».

На вкладке Дополнительно проверьте, чтобы были отмечены флажками опции, связанные с cookie и другими данными сайта, а также кэшированными изображениями и файлами. Установите временной диапазон на «Все время», а затем нажмите на кнопку «Удалить данные».

После завершения закройте Chrome и перезагрузите компьютер. Попробуйте открыть страницу, которую не удавалось из-за ошибки «Часы спешат/отстают».

Добавление параметров в строку запуска Chrome

Если продолжаете сталкиваться с тем, что часы отстают или спешат, попробуйте изменить условие запуска Chrome, добавлением в хвост команды параметра «—ignore-certificate-errors» .

Таким образом, сможете посещать страницы с отозванными сертификатами SSL, не сталкиваясь при этом с сообщением «Часы отстают/спешат».Но это решение не рекомендуется, поскольку может сделать систему уязвимой.

Закройте Chrome и щелкните правой кнопкой мыши на ярлык браузера. В контекстном меню выберите Свойства.

В поле Объект на вкладке Ярлык добавьте в хвост команды указанные параметры запуска:

Нажмите на кнопку «Применить», при отображении окна предупреждения щелкните на «Продолжить». Если процедура выполнена правильно, то больше не столкнетесь с ошибкой.

Как изменить часовой пояс в браузере Chrome

filcherson

Новичок

Я работаю админом в соц. сетях и мне приходится входит под разными аккаунтами и под разными прокси, а так как я живу в Украине, а прокси использую российские приходится постоянно менять часовой пояс для того, чтобы часовой пояс прокси не отличался от системного времени.

Подскажите есть ли программа или плагин для быстрой смены часового пояса в виндовсе или браузере chrome.

Читать еще:  Яндекс браузер не отвечает


korablik

Новичок

stas_ik

Новичок

Можно с помощью командной строки.

Чтобы установить часовой пояс с переходом на летнее время — нужно в командной строке написать команду tzutil /s «Часовой пояс « и нажать Enter. Вместо «Часовой пояс» напишите пояс который нужен.
Например мы хотим задать часовой пояс UTC+03:00 Москва, Санкт-Петербург, Волгоград. Вводим команду:
tzutil /s «Russian Standard Time»
и нажимаем Enter.

Также можно создать bat файл с этой командой и нужным часовым поясом и по двойному клику на этот файл переводить время.

Список параметров:
(UTC-12:00) Линия перемены дат
Dateline Standard Time
(UTC-11:00) Время в формате UTC -11
UTC-11
(UTC-10:00) Алеутские острова
Aleutian Standard Time
(UTC-10:00) Гавайи
Hawaiian Standard Time
(UTC-09:30) Маркизские острова
Marquesas Standard Time
(UTC-09:00) Аляска
Alaskan Standard Time
(UTC-09:00) Время в формате UTC -09
UTC-09
(UTC-08:00) Время в формате UTC -08
UTC-08
(UTC-08:00) Нижняя Калифорния
Pacific Standard Time (Mexico)
(UTC-08:00) Тихоокеанское время (США и Канада)
Pacific Standard Time
(UTC-07:00) Аризона
US Mountain Standard Time
(UTC-07:00) Горное время (США и Канада)
Mountain Standard Time
(UTC-07:00) Ла-Пас, Мазатлан, Чихуахуа
Mountain Standard Time (Mexico)
(UTC-06:00) Гвадалахара, Мехико, Монтеррей
Central Standard Time (Mexico)
(UTC-06:00) о. Пасхи
Easter Island Standard Time
(UTC-06:00) Саскачеван
Canada Central Standard Time
(UTC-06:00) Центральная Америка
Central America Standard Time
(UTC-06:00) Центральное время (США и Канада)
Central Standard Time
(UTC-05:00) Богота, Кито, Лима, Рио-Бранко
SA Pacific Standard Time
(UTC-05:00) Восточное время (США и Канада)
Eastern Standard Time
(UTC-05:00) Гавана
Cuba Standard Time
(UTC-05:00) Гаити
Haiti Standard Time
(UTC-05:00) Индиана (восток)
US Eastern Standard Time
(UTC-05:00) Четумаль
Eastern Standard Time (Mexico)
(UTC-04:00) Асунсьон
Paraguay Standard Time
(UTC-04:00) Атлантическое время (Канада)
Atlantic Standard Time
(UTC-04:00) Джорджтаун, Ла-Пас, Манаус, Сан-Хуан
SA Western Standard Time
(UTC-04:00) Каракас
Venezuela Standard Time
(UTC-04:00) Куяба
Central Brazilian Standard Time
(UTC-04:00) Острова Теркс и Кайкос
Turks And Caicos Standard Time
(UTC-04:00) Сантьяго
Pacific SA Standard Time
(UTC-03:30) Ньюфаундленд
Newfoundland Standard Time
(UTC-03:00) Арагуаяна
Tocantins Standard Time
(UTC-03:00) Бразилия
E. South America Standard Time
(UTC-03:00) Буэнос-Айрес
Argentina Standard Time
(UTC-03:00) Гренландия
Greenland Standard Time
(UTC-03:00) Кайенна, Форталеза
SA Eastern Standard Time
(UTC-03:00) Монтевидео
Montevideo Standard Time
(UTC-03:00) Сальвадор
Bahia Standard Time
(UTC-03:00) Сен-Пьер и Микелон
Saint Pierre Standard Time
(UTC-02:00) Время в формате UTC -02
UTC-02
(UTC-01:00) Азорские о-ва
Azores Standard Time
(UTC-01:00) Кабо-Верде
Cape Verde Standard Time
(UTC) Время в формате UTC
UTC
(UTC+00:00) Дублин, Эдинбург, Лиссабон, Лондон
GMT Standard Time
(UTC+00:00) Касабланка
Morocco Standard Time
(UTC+00:00) Монровия, Рейкьявик
Greenwich Standard Time
(UTC+01:00) Амстердам, Берлин, Берн, Вена, Рим, Стокгольм
W. Europe Standard Time
(UTC+01:00) Белград, Братислава, Будапешт, Любляна, Прага
Central Europe Standard Time
(UTC+01:00) Брюссель, Копенгаген, Мадрид, Париж
Romance Standard Time
(UTC+01:00) Варшава, Загреб, Сараево, Скопье
Central European Standard Time
(UTC+01:00) Виндхук
Namibia Standard Time
(UTC+01:00) Западная Центральная Африка
W. Central Africa Standard Time
(UTC+02:00) Амман
Jordan Standard Time
(UTC+02:00) Афины, Бухарест
GTB Standard Time
(UTC+02:00) Бейрут
Middle East Standard Time
(UTC+02:00) Вильнюс, Киев, Рига, София, Таллин, Хельсинки
FLE Standard Time
(UTC+02:00) Дамаск
Syria Standard Time
(UTC+02:00) Иерусалим
Israel Standard Time
(UTC+02:00) Каир
Egypt Standard Time
(UTC+02:00) Калининград
Kaliningrad Standard Time
(UTC+02:00) Кишинев
E. Europe Standard Time
(UTC+02:00) Сектор Газа, Хеврон
West Bank Standard Time
(UTC+02:00) Триполи
Libya Standard Time
(UTC+02:00) Хараре, Претория
South Africa Standard Time
(UTC+03:00) Багдад
Arabic Standard Time
(UTC+03:00) Кувейт, Эр-Рияд
Arab Standard Time
(UTC+03:00) Минск
Belarus Standard Time
(UTC+03:00) Москва, Санкт-Петербург, Волгоград
Russian Standard Time
(UTC+03:00) Найроби
E. Africa Standard Time
(UTC+03:00) Стамбул
Turkey Standard Time
(UTC+03:30) Тегеран
Iran Standard Time
(UTC+04:00) Абу-Даби, Мускат
Arabian Standard Time
(UTC+04:00) Астрахань, Ульяновск
Astrakhan Standard Time
(UTC+04:00) Баку
Azerbaijan Standard Time
(UTC+04:00) Ереван
Caucasus Standard Time
(UTC+04:00) Ижевск, Самара
Russia Time Zone 3
(UTC+04:00) Порт-Луи
Mauritius Standard Time
(UTC+04:00) Тбилиси
Georgian Standard Time
(UTC+04:30) Кабул
Afghanistan Standard Time
(UTC+05:00) Ашхабад, Ташкент
West Asia Standard Time
(UTC+05:00) Екатеринбург
Ekaterinburg Standard Time
(UTC+05:00) Исламабад, Карачи
Pakistan Standard Time
(UTC+05:30) Колката, Мумбаи, Нью-Дели, Ченнай
India Standard Time
(UTC+05:30) Шри-Джаявардене-пура-Котте
Sri Lanka Standard Time
(UTC+05:45) Катманду
Nepal Standard Time
(UTC+06:00) Астана
Central Asia Standard Time
(UTC+06:00) Дакка
Bangladesh Standard Time
(UTC+06:00) Омск
Omsk Standard Time
(UTC+06:30) Янгон
Myanmar Standard Time
(UTC+07:00) Бангкок, Джакарта, Ханой
SE Asia Standard Time
(UTC+07:00) Барнаул, Горно-Алтайск
Altai Standard Time
(UTC+07:00) Красноярск
North Asia Standard Time
(UTC+07:00) Новосибирск
N. Central Asia Standard Time
(UTC+07:00) Томск
Tomsk Standard Time
(UTC+07:00) Ховд
W. Mongolia Standard Time
(UTC+08:00) Гонконг, Пекин, Урумчи, Чунцин
China Standard Time
(UTC+08:00) Иркутск
North Asia East Standard Time
(UTC+08:00) Куала-Лумпур, Сингапур
Singapore Standard Time
(UTC+08:00) Перт
W. Australia Standard Time
(UTC+08:00) Тайбэй
Taipei Standard Time
(UTC+08:00) Улан-Батор
Ulaanbaatar Standard Time
(UTC+08:30) Пхеньян
North Korea Standard Time
(UTC+08:45) Юкла
Aus Central W. Standard Time
(UTC+09:00) Осака, Саппоро, Токио
Tokyo Standard Time
(UTC+09:00) Сеул
Korea Standard Time
(UTC+09:00) Чита
Transbaikal Standard Time
(UTC+09:00) Якутск
Yakutsk Standard Time
(UTC+09:30) Аделаида
Cen. Australia Standard Time
(UTC+09:30) Дарвин
AUS Central Standard Time
(UTC+10:00) Брисбен
E. Australia Standard Time
(UTC+10:00) Владивосток
Vladivostok Standard Time
(UTC+10:00) Гуам, Порт-Морсби
West Pacific Standard Time
(UTC+10:00) Канберра, Мельбурн, Сидней
AUS Eastern Standard Time
(UTC+10:00) Хобарт
Tasmania Standard Time
(UTC+10:30) Лорд-Хау
Lord Howe Standard Time
(UTC+11:00) Магадан
Magadan Standard Time
(UTC+11:00) Остров Бугенвиль
Bougainville Standard Time
(UTC+11:00) Остров Норфолк
Norfolk Standard Time
(UTC+11:00) Сахалин
Sakhalin Standard Time
(UTC+11:00) Соломоновы о-ва, Нов. Каледония
Central Pacific Standard Time
(UTC+11:00) Чокурдах
Russia Time Zone 10
(UTC+12:00) Анадырь, Петропавловск-Камчатский
Russia Time Zone 11
(UTC+12:00) Веллингтон, Окленд
New Zealand Standard Time
(UTC+12:00) Время в формате UTC +12
UTC+12
(UTC+12:00) Фиджи
Fiji Standard Time
(UTC+12:45) Чатем
Chatham Islands Standard Time
(UTC+13:00) Нукуалофа
Tonga Standard Time
(UTC+13:00) Самоа
Samoa Standard Time
(UTC+14:00) О-в Киритимати
Line Islands Standard Time

Рекламное сообщение

proxywhite.com

Новичок

ProxyWhite.com — Надежные прокси IPv4 и IPv6 для Ваших целей. Онлайн консультант на сайте и круглосуточная поддержка.
Большой выбор стран и городов.

По промо-коду: Openssource10 Вы получите скидку 10% на любое количество прокси.

Что делать, если часы спешат в Google Chrome

Аутентификация на сайтах по защищенному протоколу происходит на основании множества факторов, один из них – время на компьютере пользователя. Оно должно совпадать с серверным, если же часы спешат, Гугл Хром не сможет установить безопасное соединение ни с одним веб-ресурсом, работающим через SSL-протокол. Это одна из самых распространенных первопричин ошибок «Не удаётся установить соединение с сайтом» или «Этот сайт не может обеспечить безопасное соединение». Мы подскажем, как исправить сбой часов в браузере Chrome.

Читать еще:  Количество визуальных закладок в яндекс браузере

Почему появляются ошибки часов в Гугл Хром и что это влечет за собой

В процессе загрузки практически все сайты используют время, в частности оно необходимо для формирования правильных куки. С отключенными cookies в браузере Гугл большинство веб-ресурсов откажется запускаться. Однако, скрипт не сможет сгенерировать нужные данные и записать их в специальное хранилище, если время на компьютере и на сервере не совпадает. Речь идет не о часовых поясах, которые переводятся в автоматическом режиме. Обычно проблема в том, что часы отстают или опережают реальное время на 5, 10, 20 и больше минут. Еще одна потенциальная причина – неверно установленная дата.

Следствием некорректной настройки текущего периода времени станет то, что большинство сайтов не смогут открыться, вместо них отобразится ошибка загрузки. Особенно это касается защищенных порталов: онлайн-банкингов, платежных систем, обменных пунктов и т. п.

Почему в Гугл Хром неправильное время

Сам браузер Google не имеет отдельных часов, он лишь использует глобальное время в системах Windows и Android. Если основные часы в ОС выдают ошибочные показания, эти сведения используются и веб-обозревателем Chrome. Самих же первопричин сбоев времени значительно больше:

  • Ручная настройка. В случае самостоятельной установки времени часы могут идти неправильно. При незначительных отклонениях все будет работать, но неточности в несколько минут уже отразятся на стабильности системы.
  • Полный сброс часов. Если компьютер был долго отключен от сети или на нем отсутствует батарейка BIOS, время сбрасывается к заводскому значению. То же самое справедливо и в отношении смартфонов, но причина кроется в отключении батареи.
  • БатарейкаBIOS разряжена. После выключения компьютера, за сохранение установленных параметров отвечает небольшой элемент питания. Когда он начинает разряжаться, могут появляться постоянные или периодические изменения времени. При чем не обязательно речь идет о сбросе, нередко проблема проявляется в постепенном отставании или опережении реальных значений. За сутки отклонения могут достигать 5 минут и даже больше.
  • Неполадки аппаратного характера. Редко, но материнская плата может приводить к тому, что часы постоянно спешат. Приходится ее ремонтировать, менять или регулярно задавать правильное время.

Как убрать ошибки часов в Гугл Хром на ПК

Самый эффективный путь устранения сбоев времени – восстановление правильных показаний на часах в системе. Лишь в исключительных случаях такое действие не позволяет решить неполадку и необходимы дополнительные меры.

Способ 1: автоматическое восстановление времени

Это лучший вариант, так как позволяет быстро установить точные значения времени. Единственный нюанс метода заключается в необходимости подключения к интернету, без которого способ не работает.

Как автоматически исправить показания часов в Windows 10:

  1. Нажимаем правой кнопкой мыши по элементу часов в правой части «Панели задач».
  2. Выбираем опцию «Настройка даты и времени».
  3. Активируем опцию «Установить время автоматически».

По необходимости еще рекомендуем установить правильный часовой пояс. Здесь же есть опция «Автоматическая установка часового пояса».

Способ 2: ручная настройка часов

Если нет доступа к интернету или автоматическая настройка не срабатывает, восстановить время можем и вручную. Вот только нужно иметь другое устройство с правильными часами.

Если часы спешат или отстают в Гугл Хром, предлагаем убрать проблему:

  1. Открываем строку поиска в левом нижнем углу.
  2. Вводим слово «Панель» и открываем вариант «Панель управления».
  3. Переходим в раздел «Дата и время»
  4. Кликаем по кнопке «Изменить дату и время».
  5. Указываем правильные значения во все графы.
  6. Жмем на кнопку «Ок» и активируем действие клавишей «Применить».

Дополнительные способы исправления

Порой устранить проблему с неправильно установленными часами Google Chrome несколько сложнее. Приходится выполнить пару дополнительных действий:

  • Восстановление системных файлов. Сбои данных Windows могут проявляться разным образом, в том числе и проблемами с временем. Рабочий и простой метод исправления – запустить автоматическое сканирование. Для этого достаточно открыть командную строку в режиме администратора ПК (через ПКМ по Пуску) и вставить sfc /scannow.
  • Замена батарейкиBIOS. Ее хватает надолго (несколько лет), но все равно заряд постепенно исчерпывается. Решить проблему поможет установка нового источника питания. Она представляет собой круглую батарейку, которая продается во всех компьютерных магазинах и стоит 20-40 рублей. Расположен элемент на материнской плате, достаточно отогнуть крепление, и он сам выпадет.
  • ОбновлениеBIOS. Эта тема заслуживает отдельной инструкции. Если в двух словах, для ноутбуков часто выпускается специальная утилита, которая обновляет UEFI из Windows. В современных ПК приходится использовать флешку с DOS и самим обновлением, запускаться из накопителя и проводить апгрейд.

Как исправить сбой часов в Хроме на Android

Действенный метод устранить проблему с часами в Chrome – обновить время на смартфоне.

  1. Открываем приложение «Настройки» и переходим в раздел «Расширенные настройки».
  2. Касаемся элемента «Дата и время».
  3. Активируем опцию «Дата и время сети».
  4. Опционально можем отключить автоматическое обновление и установить время с датой вручную.

Если установили правильное время, это должно исправить проблемы с часами в Гугл Хром и предотвратить появление ошибок при загрузке сайтов. Когда после всех перечисленных действий проблема продолжает сопровождать открытие большинства порталов, стоит попробовать переустановить веб-обозреватель Google Chrome.

Дата и Время

Материал на этой странице устарел, поэтому скрыт из оглавления сайта.

Более новая информация по этой теме находится на странице https://learn.javascript.ru/date.

Для работы с датой и временем в JavaScript используются объекты Date.

Создание

Для создания нового объекта типа Date используется один из синтаксисов:

Создаёт объект Date с текущей датой и временем:

Создаёт объект Date , значение которого равно количеству миллисекунд (1/1000 секунды), прошедших с 1 января 1970 года GMT+0.

Если единственный аргумент – строка, используется вызов Date.parse (см. далее) для чтения даты из неё.

new Date(year, month, date, hours, minutes, seconds, ms)

Дату можно создать, используя компоненты в местной временной зоне. Для этого формата обязательны только первые два аргумента. Отсутствующие параметры, начиная с hours считаются равными нулю, а date – единице.

Год year должен быть из 4 цифр.

Отсчёт месяцев month начинается с нуля 0.

Дата задана с точностью до миллисекунд:

Получение компонентов даты

Для доступа к компонентам даты-времени объекта Date используются следующие методы:

getFullYear() Получить год (из 4 цифр) getMonth() Получить месяц, от 0 до 11. getDate() Получить число месяца, от 1 до 31. getHours(), getMinutes(), getSeconds(), getMilliseconds() Получить соответствующие компоненты.

Некоторые браузеры реализуют нестандартный метод getYear() . Где-то он возвращает только две цифры из года, где-то четыре. Так или иначе, этот метод отсутствует в стандарте JavaScript. Не используйте его. Для получения года есть getFullYear() .

Дополнительно можно получить день недели:

Читать еще:  Не грузит яндекс браузер что делать

getDay() Получить номер дня в неделе. Неделя в JavaScript начинается с воскресенья, так что результат будет числом от 0(воскресенье) до 6(суббота).

Все методы, указанные выше, возвращают результат для местной временной зоны.

Существуют также UTC-варианты этих методов, возвращающие день, месяц, год и т.п. для зоны GMT+0 (UTC): getUTCFullYear() , getUTCMonth() , getUTCDay() . То есть, сразу после «get» вставляется «UTC» .

Если ваше локальное время сдвинуто относительно UTC, то следующий код покажет разные часы:

Кроме описанных выше, существуют два специальных метода без UTC-варианта:

Возвращает число миллисекунд, прошедших с 1 января 1970 года GMT+0, то есть того же вида, который используется в конструкторе new Date(milliseconds) .

Возвращает разницу между местным и UTC-временем, в минутах.

Установка компонентов даты

Следующие методы позволяют устанавливать компоненты даты и времени:

  • setFullYear(year [, month, date])
  • setMonth(month [, date])
  • setDate(date)
  • setHours(hour [, min, sec, ms])
  • setMinutes(min [, sec, ms])
  • setSeconds(sec [, ms])
  • setMilliseconds(ms)
  • setTime(milliseconds) (устанавливает всю дату по миллисекундам с 01.01.1970 UTC)

Все они, кроме setTime() , обладают также UTC-вариантом, например: setUTCHours() .

Как видно, некоторые методы могут устанавливать несколько компонентов даты одновременно, в частности, setHours . При этом если какая-то компонента не указана, она не меняется. Например:

Автоисправление даты

Автоисправление – очень удобное свойство объектов Date . Оно заключается в том, что можно устанавливать заведомо некорректные компоненты (например 32 января), а объект сам себя поправит.

Неправильные компоненты даты автоматически распределяются по остальным.

Например, нужно увеличить на 2 дня дату «28 февраля 2011». Может быть так, что это будет 2 марта, а может быть и 1 марта, если год високосный. Но нам обо всем этом думать не нужно. Просто прибавляем два дня. Остальное сделает Date :

Также это используют для получения даты, отдалённой от имеющейся на нужный промежуток времени. Например, получим дату на 70 секунд большую текущей:

Можно установить и нулевые, и даже отрицательные компоненты. Например:

Преобразование к числу, разность дат

Когда объект Date используется в числовом контексте, он преобразуется в количество миллисекунд:

Важный побочный эффект: даты можно вычитать, результат вычитания объектов Date – их временная разница, в миллисекундах.

Это используют для измерения времени:

Бенчмаркинг

Допустим, у нас есть несколько вариантов решения задачи, каждый описан функцией.

Как узнать, какой быстрее?

Для примера возьмём две функции, которые бегают по массиву:

Чтобы померить, какая из них быстрее, нельзя запустить один раз walkIn , один раз walkLength и замерить разницу. Одноразовый запуск ненадёжен, любая мини-помеха исказит результат.

Для правильного бенчмаркинга функция запускается много раз, чтобы сам тест занял существенное время. Это сведёт влияние помех к минимуму. Сложную функцию можно запускать 100 раз, простую – 1000 раз…

Померяем, какая из функций быстрее:

Теперь представим себе, что во время первого бенчмаркинга bench(walkIn) компьютер что-то делал параллельно важное (вдруг) и это занимало ресурсы, а во время второго – перестал. Реальная ситуация? Конечно реальна, особенно на современных ОС, где много процессов одновременно.

Гораздо более надёжные результаты можно получить, если весь пакет тестов прогнать много раз.

В современных браузерах (кроме IE9-) вызов performance.now() возвращает количество миллисекунд, прошедшее с начала загрузки страницы. Причём именно с самого начала, до того, как загрузился HTML-файл, если точнее – с момента выгрузки предыдущей страницы из памяти.

Так что это время включает в себя всё, включая начальное обращение к серверу.

Его можно посмотреть в любом месте страницы, даже в , чтобы узнать, сколько времени потребовалось браузеру, чтобы до него добраться, включая загрузку HTML.

Возвращаемое значение измеряется в миллисекундах, но дополнительно имеет точность 3 знака после запятой (до миллионных долей секунды!), поэтому можно использовать его и для более точного бенчмаркинга в том числе.

Для измерения с одновременным выводом результатов в консоли есть методы:

  • console.time(метка) – включить внутренний хронометр браузера с меткой.
  • console.timeEnd(метка) – выключить внутренний хронометр браузера с меткой и вывести результат.

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

В коде ниже таймеры walkIn , walkLength – конкретные тесты, а таймер «All Benchmarks» – время «на всё про всё»:

При запуске этого примера нужно открыть консоль, иначе вы ничего не увидите.

Современные интерпретаторы JavaScript делают массу оптимизаций, например:

  1. Автоматически выносят инвариант, то есть постоянное в цикле значение типа arr.length , за пределы цикла.
  2. Стараются понять, значения какого типа хранит данная переменная или массив, какую структуру имеет объект и, исходя из этого, оптимизировать внутренние алгоритмы.
  3. Выполняют простейшие операции, например сложение явно заданных чисел и строк, на этапе компиляции.
  4. Могут обнаружить, что некий код, например присваивание к неиспользуемой локальной переменной, ни на что не влияет и вообще исключить его из выполнения, хотя делают это редко.

Эти оптимизации могут влиять на результаты тестов, поэтому измерять скорость базовых операций JavaScript («проводить микробенчмаркинг») до того, как вы изучите внутренности JavaScript-интерпретаторов и поймёте, что они реально делают на таком коде, не рекомендуется.

Форматирование и вывод дат

Во всех браузерах, кроме IE10-, поддерживается новый стандарт Ecma 402, который добавляет специальные методы для форматирования дат.

Это делается вызовом date.toLocaleString(локаль, опции) , в котором можно задать много настроек. Он позволяет указать, какие параметры даты нужно вывести, и ряд настроек вывода, после чего интерпретатор сам сформирует строку.

Пример с почти всеми параметрами даты и русским, затем английским (США) форматированием:

Вы сможете подробно узнать о них в статье Intl: интернационализация в JavaScript, которая посвящена этому стандарту.

Методы вывода без локализации:

toString() , toDateString() , toTimeString() Возвращают стандартное строчное представление, не заданное жёстко в стандарте, а зависящее от браузера. Единственное требование к нему – читаемость человеком. Метод toString возвращает дату целиком, toDateString() и toTimeString() – только дату и время соответственно.

toUTCString() То же самое, что toString() , но дата в зоне UTC.

toISOString() Возвращает дату в формате ISO Детали формата будут далее. Поддерживается современными браузерами, не поддерживается IE8-.

Если хочется иметь большую гибкость и кросс-браузерность, то также можно воспользоваться специальной библиотекой, например Moment.JS или написать свою функцию форматирования.

Разбор строки, Date.parse

Все современные браузеры, включая IE9+, понимают даты в упрощённом формате ISO 8601 Extended.

Этот формат выглядит так: YYYY-MM-DDTHH:mm:ss.sssZ , где:

  • YYYY-MM-DD – дата в формате год-месяц-день.
  • Обычный символ T используется как разделитель.
  • HH:mm:ss.sss – время: часы-минуты-секунды-миллисекунды.
  • Часть ‘Z’ обозначает временную зону – в формате +-hh:mm , либо символ Z , обозначающий UTC. По стандарту её можно не указывать, тогда UTC, но в Safari с этим ошибка, так что лучше указывать всегда.

Также возможны укороченные варианты, например YYYY-MM-DD или YYYY-MM или даже только YYYY .

Ссылка на основную публикацию
Adblock
detector