Следующие методы можно использовать для получения информации из объекта даты:
Метод | Описание |
---|---|
getFullYear() | Получить год в формате четырех цифр (гггг) |
getMonth() | Получить номер месяца (0-11) |
getDate() | Получить число месяца (1-31) |
getHours() | Получить час (0-23) |
getMinutes() | Получить минуты (0-59) |
getSeconds() | Получить секунды (0-59) |
getMilliseconds() | Получить миллисекунды (0-999) |
getTime() | Получить время (количество миллисекунд, прошедших с 1 января 1970) |
getDay() | Получить номер дня недели (0-6) |
Метод getTime()
Метод getTime() возвращает количество миллисекунд, прошедших с 1 января 1970:
var d = new Date();
document.getElementById("demo").innerHTML = d.getTime();
Метод getFullYear()
Метод getFullYear() возвращает год в формате четырех цифр:
var d = new Date();
document.getElementById("demo").innerHTML = d.getFullYear();
Метод getMonth()
Метод getMonth() возвращает номер месяца (0-11):
var d = new Date();
document.getElementById("demo").innerHTML = d.getMonth();
В JavaScript первый месяц (январь) имеет номер 0, таким образом у последнего, декабря, будет номер 11.
Чтобы возвращалось название месяца, можно использовать массив с именами месяцев и метод getMonth():
var d = new Date();
var months = ["Январь", "Февраль", "Март", "Апрель", "Май", "Июнь",
"Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"];
document.getElementById("demo").innerHTML = months[d.getMonth()];
Метод getDate()
Метод getDate() возвращает число месяца (1-31):
var d = new Date();
document.getElementById("demo").innerHTML = d.getDate();
Метод getHours()
Метод getHours() возвращает час (0-23):
var d = new Date();
document.getElementById("demo").innerHTML = d.getHours();
Метод getMinutes()
Метод getMinutes() возвращает минуты (0-59):
var d = new Date();
document.getElementById("demo").innerHTML = d.getMinutes();
Метод getSeconds()
Метод getSeconds() возвращает секунды (0-59):
var d = new Date();
document.getElementById("demo").innerHTML = d.getSeconds();
Метод getMilliseconds()
Метод getMilliseconds() возвращает миллисекунды (0-999):
var d = new Date();
document.getElementById("demo").innerHTML = d.getMilliseconds();
Метод getDay()
Метод getDay() возвращает номер дня недели (0-6):
var d = new Date();
document.getElementById("demo").innerHTML = d.getDay();
В JavaScript первым днем недели (0) считается "воскресенье", даже если в стране, где находится пользователь, первым днем недели считается "понедельник".
Чтобы возвращалось название дня недели, можно использовать массив с днями недели и метод getDay():
var d = new Date();
var days = ["Воскресенье", "Понедельник", "Вторник", "Среда",
"Четверг", "Пятница", "Суббота"];
document.getElementById("demo").innerHTML = days[d.getDay()];
Методы даты по UTC
Кроме обычных методов есть также аналогичные методы, но возвращающие данные по UTC (Universal Time Zone):
Метод | Описание |
---|---|
getUTCDate() | То же, что getDate() |
getUTCDay() | То же, что getDay() |
getUTCFullYear() | То же, что getFullYear() |
getUTCHours() | То же, что getHours() |
getUTCMilliseconds() | То же, что getMilliseconds() |
getUTCMinutes() | То же, что getMinutes() |
getUTCMonth() | То же, что getMonth() |
getUTCSeconds() | То же, что getSeconds() |
Методы для изменения данных объекта Date
Помимо получения данных в объекте Date также есть методы, которые позволяют изменить значения даты и времени (год, месяц, день, час, минуты, секунды, миллисекунды).
Метод | Описание |
---|---|
setDate() | Устанавливает день (1-31) |
setFullYear() | Устанавливает год (также можно установить месяц и день) |
setHours() | Устанавливает час (0-23) |
setMilliseconds() | Устанавливает миллисекунды (0-999) |
setMinutes() | Устанавливает минуты (0-59) |
setMonth() | Устанавливает месяц (0-11) |
setSeconds() | Устанавливает секунды (0-59) |
setTime() | Устанавливает время (количество миллисекунд, прошедших с 1 января 1970) |
Метод setFullYear()
Метод setFullYear() устанавливает в объекте даты год.
В следующем примере устанавливается 2020 год:
var d = new Date();
d.setFullYear(2020);
document.getElementById("demo").innerHTML = d;
При желании при помощи метода setFullYear() также можно установить месяц и день:
var d = new Date();
d.setFullYear(2020, 11, 3);
document.getElementById("demo").innerHTML = d;
Метод setMonth()
Метод setMonth() устанавливает в объекте даты месяц (0-11):
var d = new Date();
d.setMonth(11);
document.getElementById("demo").innerHTML = d;
Метод setDate()
Метод setDate() устанавливает в объекте даты день (1-31):
var d = new Date();
d.setDate(20);
document.getElementById("demo").innerHTML = d;
Кроме этого, метод setDate() может использоваться для добавления дней к дате:
var d = new Date();
d.setDate(d.getDate() + 50);
document.getElementById("demo").innerHTML = d;
Если при добавлении дней происходит сдвиг месяцев или года, то эти изменения в объекте Date происходят автоматически.
Метод setHours()
Метод setHours() устанавливает в объекте даты час (0-23):
var d = new Date();
d.setHours(22);
document.getElementById("demo").innerHTML = d;
Метод setMinutes()
Метод setMinutes() устанавливает в объекте даты минуты (0-59):
var d = new Date();
d.setMinutes(30);
document.getElementById("demo").innerHTML = d;
Метод setSeconds()
Метод setSeconds() устанавливает в объекте даты секунды (0-59):
var d = new Date();
d.setSeconds(30);
document.getElementById("demo").innerHTML = d;
Сравнение дат
В JavaScript даты легко сравниваются.
В следующем примере текущая дата сравнивается с 14 января 2100 года:
var today, someday, text;
today = new Date();
someday = new Date();
someday.setFullYear(2100, 0, 14);
if (someday > today) {
text = "14 января 2100 года еще не наступило.";
} else {
text = "14 января 2100 года уже прошло.";
}
document.getElementById("demo").innerHTML = text;
Внимание! JavaScript считает месяцы от 0 до 11. Январь — 0. Декабрь — 11.