JavaScript Форматы дат
Ввод даты JavaScript
Как правило, существуют 3 типа форматов ввода даты JavaScript:
Тип | Пример |
---|---|
Дата ISO | "2015-03-25" (Международный стандарт) |
Короткая Дата | "03/25/2015" |
Длинная Дата | "Mar 25 2015" or "25 Mar 2015" |
Формат ISO соответствует строгому стандарту в JavaScript.
Другие форматы не так хорошо определены и могут быть специфичными для браузера.
Дата выхода JavaScript
Независимо от формата ввода, JavaScript будет (по умолчанию) выходными датами в формате полной текстовой строки:
JavaScript ISO даты
ISO 8601 является международным стандартом для представления дат и времени.
Синтаксис ISO 8601 (гггг-мм-DD) также является предпочтительным форматом даты JavaScript:
Пример (полная дата)
var d = new Date("2015-03-25");
Вычисленная Дата будет относительно вашего часового пояса.
В зависимости от вашего часового пояса, результат выше будет меняться в период с 24 марта по 25 марта.
ISO даты (год и месяц)
Даты ISO могут быть написаны без указания дня (гггг-мм):
Пример
var d = new Date("2015-03");
Часовые пояса будут варьироваться в результате выше между 28 февраля и 01 марта.
ISO даты (только год)
ISO даты могут быть написаны без месяца и дня (гггг):
Пример
var d = new Date("2015");
Часовой пояс будет варьироваться в результате выше в период с декабря 31 2014 по Январь 01 2019.
ISO даты (Дата-время)
Даты ISO могут быть написаны с добавлением часов, минут и секунд (гггг-мм-ддсх: mm: ССЗ):
Пример
var d = new Date("2015-03-25T12:00:00Z");
Дата и время отделены от прописных т.
Время UTC определяется прописной буквой Z.
Если требуется изменить время относительно UTC, удалите Z и Add + HH: мм или-HH: mm вместо:
Пример
var d = new Date("2015-03-25T12:00:00-06:30");
UTC (Универсальное координированное время) совпадает с GMT (среднее время по Гринвичу).
Пропуск T или Z в строке даты-времени может дать другой результат в другом браузере.
Часовые пояса
При установке даты без указания часового пояса JavaScript будет использовать часовой пояс браузера.
При получении даты, без указания часового пояса, результат преобразуется в часовой пояс браузера.
Иными словами: Если дата/время создается в GMT (среднее время по Гринвичу), Дата/время будут преобразованы в CDT (центральное США дневное время), если пользователь переходит из центра США.
Короткие даты JavaScript.
Короткие даты написаны с помощью синтаксиса "mm/dd/гггг", как это:
Пример
var d = new Date("03/25/2015");
Предупреждения!
В некоторых браузерах месяцы или дни без начальных нулей могут привести к ошибке:
var d = new Date("2015-3-25");
Поведение "гггг/мм/дд" не определено.
Некоторые обозреватели будут пытаться угадать формат. Некоторые будут возвращать NaN.
var d = new Date("2015/03/25");
Поведение "DD-MM-гггг" также не определено.
Некоторые обозреватели будут пытаться угадать формат. Некоторые будут возвращать NaN.
var d = new Date("25-03-2015");
Длинные даты JavaScript.
Длинные даты чаще всего пишутся с "МММ DD гггг" синтаксис, как это:
Пример
var d = new Date("Mar 25 2015");
Месяц и день могут быть в любом порядке:
Пример
var d = new Date("25 Mar 2015");
И, месяц может быть написана в полном объеме (январь), или сокращенно (январь):
Пример
var d = new Date("January 25 2015");
Пример
var d = new Date("Jan 25 2015");
Запятые игнорируются. Имена не чувствительны к регистру:
Пример
var d = new Date("JANUARY, 25, 2015");
Дата ввода-анализ дат
Если имеется допустимая строка даты, можно использовать Метод Date. Parse () для преобразования его в миллисекунды.
Дата. Parse () возвращает число миллисекунд между датой и 1 января 1970:
Пример
var msec = Date.parse("March 21, 2012");
document.getElementById("demo").innerHTML = msec;
Затем можно использовать число миллисекунд для преобразования его в объект Date:
Пример
var msec = Date.parse("March 21, 2012");
var d = new Date(msec);
document.getElementById("demo").innerHTML = d;