JavaScript метод Date.parse()
JavaScript DateОпределение и применение
JavaScript метод parse() объекта Date анализирует строковое представление даты и возвращает количество миллисекунд, прошедших с 00:00:00 1 января 1970 года по UTC, или возвращает значение NaN (англ. Not-a-Number, "не число"), если строка не распознана или содержит недопустимые значения даты.
Поддержка браузерами
Метод | Chrome | Firefox | Opera | Safari | IExplorer | Edge |
---|---|---|---|---|---|---|
parse() | Да | Да | Да | Да | Да | Да |
JavaScript синтаксис:
// прямой вызов Date.parse(dateString) // неявный вызов new Date(dateString) dateString - String
Спецификация
ECMAScript 1st Edition (ECMA-262). Реализовано в JavaScript 1.0.Значения параметров
Параметр | Описание |
---|---|
dateString | Строка, представляющая упрощение расширенного формата календарной даты ISO 8601 (могут использоваться и другие форматы, но результаты зависят от реализации). Например, "2019-01-01" (форма только для даты), "2019-01-01T10: 00: 00" (Форма даты и времени) или "2019-01-01T10:00:00.000+09:00" (Форма даты, времени с миллисекундами и часовым поясом) может быть передана и будет проанализирована. Когда смещение часового пояса отсутствует, формы только даты интерпретируются как время UTC, а формы даты и времени интерпретируются как местное время. Обязательный параметр. |
Пример использования
Следующие вызовы возвращают одно занчение, первый вызов в соответствии с ES5 будет означать время UTC, а другие указывают часовой пояс UTC через спецификацию даты ISO (Z и +00:00):
Date.parse("2020-01-01"); // 1577836800000 Date.parse("2020-01-01T00:00:00.000Z"); // 1577836800000 Date.parse("2020-01-01T00:00:00.000+00:00"); // 1577836800000
Следующий вызов, который не указывает часовой пояс, будет установлен в 2020-01-01 в 00:00:00 в локальном часовом поясе системы:
Date.parse("2020-01-01T00:00:00"); // 1577826000000 (в моем случае)
Некоторые другие примеры синтаксического анализа нестандартных строк дат:
Date.parse('Aug 01, 2000'); // 965073600000 Date.parse('Wed, 01 Aug 2000 00:00:00 GMT'); // 965088000000 Date.parse('Wed, 01 Aug 2000 00:00:00'); // 965073600000 Date.parse('Thu, 01 Jan 2000 00:00:00 GMT'); // 946684800000 Date.parse('Thu, 01 Jan 2000 00:00:00'); // 946674000000 Date.parse('Thu, 01 Jan 2000 00:00:00 GMT-0400'); // 946699200000JavaScript Date