Объект Date в Javascript

Date в Javascript

Всем доброго времени суток. На связи Алексей Гулынин. В прошлой статье вы узнали об объекте Math в Javascript. В данной статье я бы хотел рассказать об объекте Date в Javascript. Работать с датами приходится абсолютно везде, поэтому во всех языках программирования функции для работы с датой уже есть. В этом плане javascript не стал исключением. Давайте на примерах начнем разбираться с объектом Date, и для начала, выведем текущую дату и время. Делается это следующим образом:

<script>
var date = new Date();
document.write(date); //Thu Jul 10 2014 20:18:24 GMT+0600 (Уральское время (зима))
</script>

Также можно передавать различные аргументы. Допустим такой вариант:

var date = new Date(1231451223115); 
document.write(date); //Fri Jan 09 2009 03:47:03 GMT+0600 (Уральское время (зима))

Если передаётся числовой параметр, то здесь имеется ввиду, количество миллисекунд, прошедших с полуночи 1 января 1970 года (эта дата считывается зарождением эпохи Unix).

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

var date = new Date("30 March 1990 15:00"); //Fri Mar 30 1990 15:00:00 GMT+0600 (Уральское время (зима))

Также можно создавать дату с указанием только года месяца и числа. Ещё можно указывать часы минуты и секунды:

var date = new Date(1990, 2, 30); 
var date1 = new Date(1990, 2, 30, 15, 15, 5);
document.write(date + "</br>"); //Fri Mar 30 1990 00:00:00 GMT+0600 (Уральское время (зима))
document.write(date1); //Fri Mar 30 1990 15:15:05 GMT+0600 (Уральское время (зима))

Думаю, на данном этапе проблем с созданием дат не должно возникнуть. Перейдём к рассмотрению различных методов по работе с объектом Date в Javascript. Давайте разберем методы, которые возвращают определенную часть от даты. Объяснять данные методы смысла нет, по их названию и примеру всё будет понятно:

<script>
var date = new Date();
document.write("Current date ==> " + date +"</br>");
document.write("Year ==> " + date.getFullYear() + "<br/>");
document.write("Month ==> " + date.getMonth() + "<br/>");
document.write("Day ==> " + date.getDate() + "<br/>");
document.write("Day of week ==> " + date.getDay() + "<br/>");
document.write("Hour ==> " + date.getHours() + "<br/>");
document.write("Minutes ==> " + date.getMinutes() + "<br/>");
document.write("Seconds ==> " + date.getSeconds() + "<br/>");
document.write("Milliseconds ==> " + date.getMilliseconds() + "<br/>");
document.write("Количество миллисекунд, прошедших с начала эпохи Unix ==> " + date.getTime() + "<br />");
</script>

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

Также существует те же самые методы, но показывающие дату и время по Гринвичу. Они полностью аналогичны предыдущим, за исключением того, что добавляется приставка "UTC". Приведу пример пары методов:

<script>
var date = new Date();
document.write("Год ==> " + date.getUTCFullYear() + "<br/>");
document.write("Месяц ==> " + date.getUTCMonth() + "<br/>");
</script>

Если существует метод, который возвращает значения, то должен существовать метод, который и устанавливает значения. Здесь вместо get пишем set. Приведу пару примеров:

<script>
var date = new Date();
date.setFullYear(2010);
date.setMonth(11);
document.write(date);
</script>

Также можно устанавливать дату и время по Гринвичу с помощью приставки "UTC".

Метод toLocaleString() возвращает строковое представление даты для текущей локали (допустим у нас в России принято ставить день недели перед месяцем, в США же наоборот, т.е. для разных локалей этот метод вернет разное значение). Пример:

<script>
var date = new Date();
document.write(date.toLocaleString()); //10.7.2014 21:09:39 (я нахожусь в России =))
</script>

Это были все основные методы по работе с датой и временем в Javascript.

В качестве домашнего задания создайте две даты и посчитайте количество полных лет между этими двумя датами. Учтите момент, чтобы вторая дата была старше первой.

В данной статье вы узнали, что такое объект Date в Javascript и как с ним работать.

На связи был Алексей Гулынин, оставляйте свои комментарии, увидимся в следующих статьях.


Комментарии:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *