САЙТ ДЛЯ ВЕБ РАЗРАБОТЧИКОВ НА РУССКОМ ЯЗЫКЕ

JavaScript Формат даты



JavaScript ввод даты

Действует, как правило, 3 типа JavaScript ввода формата даты:

Тип Пример
ISO дата "2015-03-25" (международный стандарт)
Короткая дата "03/25/2015"
Длинная дата "Март 25 2015" или "25 Март 2015"

Формат ISO соответствует строгому стандарту JavaScript.

Другие форматы не так хорошо определены и могут быть для конкретных браузеров.


JavaScript ввод даты

Независимо от формата ввода, JavaScript будет (по умолчанию) выводить даты полностью, формат текстовой строкой:


JavaScript ISO даты

ISO 8601 является международным стандартом для представления даты и времени.

Синтаксис ISO 8601 (YYYY-MM-DD) также является предпочтительным JavaScript форматом даты:

Пример (компьтерная дата)

var d = new Date("2015-03-25");
Редактор кода »

Компьтерные даты будут относиться к вашему часовому поясу.
В зависимости от вашего часового пояса, результат выше будет варьироваться между 24 Марта и 25 Марта.


ISO даты (год и месяц)

ISO даты могут быть записаны без указания дня (YYYY-MM):

Пример

var d = new Date("2015-03");
Редактор кода »

Часовые пояса, результат выше будет варьироваться в период с 28 Февраля по 01 Марта.


ISO даты (только год)

ISO даты могут быть записаны без числа и месяца (YYYY):

Пример

var d = new Date("2015");
Редактор кода »

Часовые пояса изменят результат выше в период с 31 Декабря 2014 года по 01 Января 2015 года.


ISO даты (дата-время)

ISO даты могут быть записаны с добавлением часов, минут и секунд (YYYY-MM-DDTHH:MM:SSZ):

Пример

var d = new Date("2015-03-25T12:00:00Z");
Редактор кода »

Дата и время разделяются заглавной буквой T.

Время в формате UTC указывается с заглавной буквы Z.

Если вы хотите изменить время относительно UTC, удалите Z и вместо добавьте +HH: MM или -HH: MM:

Пример

var d = new Date("2015-03-25T12:00:00-06:30");
Редактор кода »

UTC (всеобщее координируемое время) это же как GMT (среднее время по Гринвичу).

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


Часовой пояс

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

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

Другими словами: если дата/время в GMT (время по Гринвичу), в дата / время будет преобразовано в CDT (центральное летнее время США), если пользователь просматривает из центра США.


JavaScript короткие даты.

Короткие даты пишутся между собой "MM/DD/YYYY" синтаксис такой:

Пример

var d = new Date("03/25/2015");
Редактор кода »

ВНИМАНИЕ!

В некоторых браузерах месяцы или дни без ведущих нулей могут привести к ошибке:

var d = new Date("2015-3-25");

Поведение "YYYY/MM/DD" неопределено.
Некоторые браузеры будут угадывать формат. Некоторые вернут NaN.

var d = new Date("2015/03/25");

Поведение "DD-MM-YYYY" также неопределено.
Некоторые браузеры попытаются угадать Формат. Некоторые вернут NaN.

var d = new Date("25-03-2015");

JavaScript длинные даты.

Длинные даты чаще всего пишутся с "MMM DD YYYY" синтаксис такой:

Пример

var d = new Date("Mar 25 2015");
Редактор кода »

Месяц и день могут быть в любом порядке:

Пример

var d = new Date("25 Mar 2015");
Редактор кода »

И месяц может быть написан полностью (January), или сокращенно (Jan):

Пример

var d = new Date("January 25 2015");
Редактор кода »

Пример

var d = new Date("Jan 25 2015");
Редактор кода »

Запятые игнорируются. В именах регистр не учитываются:

Пример

var d = new Date("JANUARY, 25, 2015");
Редактор кода »

Ввод даты - Синтаксический анализ даты

Если у вас есть допустимая строка даты, вы можете использовать метод Date.parse() для преобразования миллисекунд.

Date.parse() возвращает количество миллисекунд между датой и 1 Января 1970 года:

Пример

var msec = Date.parse("March 21, 2012");
document.getElementById("demo").innerHTML = msec;
Редактор кода »

Затем можно использовать количество миллисекунд для объекта преобразовать в дату:

Пример

var msec = Date.parse("March 21, 2012");
var d = new Date(msec);
document.getElementById("demo").innerHTML = d;
Редактор кода »