Javascript.RU

Date

Создание

dateObj = new Date()
dateObj = new Date(dateVal)
dateObj = new Date(year, month, date[, hours, minutes, seconds, ms] )

Аргументы

dateVal
  • Если параметр является числовым, то он интерпретируется как количество миллисекунд от 1-Янв-1970 00:00.
  • Если строкой, то она разбирается и интерпретируется как дата по стандартным правилам Date.parse.
year
Год в формате YYYY.
month
Месяц от 0 (Янв) до 11 (Дек).
date
День месяца от 1 до 31.
hours
Параметр должен быть указан, если указан параметр minutes. Устанавливает кол-во часов от 0 до 23.
minutes
Параметр должен быть указан, если указан параметр seconds. Устанавливает количество минут: от 0 до 59.
seconds
Параметр должен быть указан, если указан параметр ms. Устанавливает количество секунд: от 0 до 59.
ms
Количество миллисекунд: от 0 до 999.

Дата измеряется в миллисекундах, начиная от полуночи 01 января 1970 года GMT+0. День содержит 86,400,000 миллисекунд.

Объект Date ведет себя одинаково на всех платформах.

Date поддерживает как методы для работы в зоне UTC (GMT+0), так и методы для работы с местным временем.
Местное время - это то, которое установлено на компьютере, на котором выполняется яваскрипт.


Описание, примеры

Если конструктор запущен без аргументов, то возвращается текущая дата.

Пример: получить текущую дату
var today = new Date()

При вызове с одним аргументом - строкой, строка разбирается и интерпретируется как дата, так же, как и в методе Date.parse.

Пример: создать дату из строки
var date = new Date("21 May 1958 10:12") // используется редко

При объявлении с несколькими аргументами, отсутствующие аргументы автоматически считаются равными 0.

Пример: объявление даты с несколькими аргументами
new Date(1)
// Thu Jan 01 1970 03:00:00 GMT+0300 (Russian Standard Time)
new Date(1,2)
// Fri Mar 01 1901 00:00:00 GMT+0300 (Russian Standard Time)
new Date(1,2,3)
// Sun Mar 03 1901 00:00:00 GMT+0300 (Russian Standard Time)
new Date(1,2,3,4)
// Sun Mar 03 1901 04:00:00 GMT+0300 (Russian Standard Time)
new Date(1,2,3,4,5)
//Sun Mar 03 1901 04:05:00 GMT+0300 (Russian Standard Time)
new Date(1,2,3,4,5,6)
//Sun Mar 03 1901 04:05:06 GMT+0300 (Russian Standard Time)

Методы

Date.parse
toLocaleString
getDate
getDay
getFullYear
getMilliseconds
getMinutes
getSeconds
getTimezoneOffset
getUTCDate
getUTCDay
getUTCHours
getHours
getUTCMilliseconds
getUTCMinutes
getUTCSeconds
setSeconds
setFullYear
setMilliseconds
setTime
setYear
setDate
setUTCDate
setUTCHours
setHours
setUTCMilliseconds
setUTCMinutes
setMinutes
setMonth
setUTCSeconds
setUTCFullYear
setUTCMonth
toGMTString
toLocaleFormat
toLocaleTimeString
toLocaleDateString
toString
toTimeString
toDateString
toUTCString
getUTCFullYear
getMonth
Date.UTC
getUTCMonth
getTime
valueOf
getYear

См. также


Автор: Гость (не зарегистрирован), дата: 12 апреля, 2010 - 07:47
#permalink

Спасибо за справку


Автор: Гость (не зарегистрирован), дата: 28 мая, 2010 - 13:34
#permalink

А что с методом getVarDate?


Автор: eslexa (не зарегистрирован), дата: 10 сентября, 2010 - 09:16
#permalink

Привет автору. Пожелание: хотелось бы, чтобы в столбце методов было рядом с каждым методом его кратенькое описание - типа для чего он нужен. Это для удобства


Автор: eslexa (не зарегистрирован), дата: 10 сентября, 2010 - 09:16
#permalink

Привет автору. Пожелание: хотелось бы, чтобы в столбце методов было рядом с каждым методом его кратенькое описание - типа для чего он нужен. Это для удобства


Автор: Гость (не зарегистрирован), дата: 8 октября, 2010 - 13:26
#permalink

+1 увы, юзабилити этого сайта обратно пропорционально количеству полезной информации


Автор: Гость (не зарегистрирован), дата: 3 октября, 2011 - 09:52
#permalink

Заплатите автору, и будет вам и юзабилити, и сверхбыстрая закачка всей нужной информацию прямо в ваш мозг!


Автор: Ilia (не зарегистрирован), дата: 5 ноября, 2010 - 10:41
#permalink

Третий параметр в dateObj = new Date(year, month, date, ...) лучше назвать day.


Автор: linl (не зарегистрирован), дата: 25 апреля, 2011 - 16:34
#permalink

Day - день недели, а Date - день месяца )


Автор: Ganster41 (не зарегистрирован), дата: 19 ноября, 2010 - 12:48
#permalink

>Объект Date ведет себя одинаково на всех платформах.

Увы, но нет. Правила Date.parse интерпретируются по-разному(Safari может распарсить краткую строку только в формате m/d/Y, даже использование '-' в качестве разделителя вызовет ошибку. Тогда как остальные браузеры(по крайней мере IE, Firefox, Chrome) понимают даже формат MySQL(Y-m-d).


Автор: Crusader, дата: 17 января, 2011 - 19:00
#permalink

Можно как-то проверить строку - является ли она датой?
я так понимаю:

isNaN(Date.parse(dateVal))

Автор: komisvadim, дата: 20 февраля, 2011 - 13:45
#permalink

еще вопрос не работает подсчет времени жизни сайта
d0 = new Date('September 30, 2008');
d1 = new Date();
dt = (d1.getTime() - d0.getTime()) / (1000*60*60*24);
выдает
Line 3 Error: Could not convert variant of type (String) into type (Double)
как преобразовать типы?


Автор: Гость (не зарегистрирован), дата: 27 февраля, 2011 - 22:03
#permalink

Скорее всего достаточно заменить

d0 = new Date('September 30, 2008');

на

d0 = new Date(2008, 8, 30);

Автор: Гость (не зарегистрирован), дата: 18 апреля, 2011 - 07:53
#permalink

в разделе аргументы, этой статьи написано: "Количество миллисекунд: от 0 до 999."
почему 999 ??


Автор: Гость (не зарегистрирован), дата: 20 апреля, 2011 - 09:37
#permalink

Потому что 1000 миллисекунд - это уже следующая секунда


Автор: Эшва (не зарегистрирован), дата: 31 июля, 2011 - 15:27
#permalink

Вот пр... странные люди. В конструкторе номер месяца сделали 0-based. Зачем???
Короче попался на эту "странность".


Автор: Гость (не зарегистрирован), дата: 3 августа, 2011 - 10:58
#permalink

Подскажите, как вычислить предыдущую дату? Скажем пользователь ввел 25.05.2011, мне нужно получить 24.05.2011. Как это сделать?


Автор: Гость (не зарегистрирован), дата: 11 августа, 2011 - 12:36
#permalink

а можно как нибудь сравнивать две даты, с помощью привычных <, >.. или, на худой конец, есть ли какие-нибудь методы для этого


Автор: B@rmaley.e><e, дата: 12 августа, 2011 - 13:55
#permalink

А проверить не судьба?

alert([new Date(2008, 3, 1) > new Date(2009, 3, 1), new Date(2008, 3, 1) > new Date(2007, 3, 1)])

Автор: Гость (не зарегистрирован), дата: 14 октября, 2011 - 10:23
#permalink

Подскажите пожалуста, как можно создать дату с задоной TimeZone


Автор: Гость (не зарегистрирован), дата: 9 ноября, 2011 - 18:13
#permalink

DROP TABLE `users`


Отправить комментарий

Приветствуются комментарии:
  • Полезные.
  • Дополняющие прочитанное.
  • Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
    Для остальных вопросов и обсуждений есть форум.
P.S. Лучшее "спасибо" - не комментарий, как все здорово, а рекомендация или ссылка на статью.
Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешены HTML-таги: <strike> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <u> <i> <b> <pre> <img> <abbr> <blockquote> <h1> <h2> <h3> <h4> <h5> <p> <div> <span> <sub> <sup>
  • Строки и параграфы переносятся автоматически.
  • Текстовые смайлы будут заменены на графические.

Подробнее о форматировании

CAPTCHA
Антиспам
16 + 0 =
Введите результат. Например, для 1+3, введите 4.
 
Поиск по сайту
Реклама
Содержание

Учебник javascript

Основные элементы языка

Сундучок с инструментами

Интерфейсы

Все об AJAX

Оптимизация

Разное

Дерево всех статей

Последние обсуждения на форуме
Forum
Последние комментарии