JavaScript Date: Working with Dates in Your Web Applications
JavaScript предоставляет встроенный объект «Date» для работы с датами и временем. Он позволяет создавать, манипулировать и отображать даты и время в JavaScript.
Создание объекта Date:
Создать объект Date можно несколькими способами:
- new Date() - создает объект Date, который содержит текущее дату и время.
const currentDate = new Date();
console.log(currentDate); // выводит текущую дату и время
- new Date(milliseconds) - создает объект Date, который содержит дату и время, соответствующие количеству миллисекунд, прошедших с 1 января 1970 года 00:00:00 UTC.
const date = new Date(0);
console.log(date); // выводит дату 01.01.1970 00:00:00 UTC
- new Date(dateString) - создает объект Date, который содержит дату и время, заданные в виде строки.
const date = new Date('December 17, 1995 03:24:00');
console.log(date); // выводит дату 17.12.1995 03:24:00
Манипулирование датами:
JavaScript позволяет добавлять или вычитать отдельные значения дат (годы, месяцы, дни, часы, минуты и секунды) с помощью методов объекта Date:
- getFullYear() - возвращает год указанной даты.
- getMonth() - возвращает месяц указанной даты (от 0 до 11).
- getDate() - возвращает день месяца указанной даты (от 1 до 31).
- getDay() - возвращает день недели указанной даты (от 0 до 6, где 0 - воскресенье).
- getHours() - возвращает час указанной даты (от 0 до 23).
- getMinutes() - возвращает минуты указанной даты (от 0 до 59).
- getSeconds() - возвращает секунды указанной даты (от 0 до 59).
- setTime(milliseconds) - устанавливает дату и время, которые соответствуют указанному количеству миллисекунд.
const date = new Date();
console.log(date); // текущая дата и время
date.setDate(date.getDate() + 1);
console.log(date); // следующий день
date.setFullYear(date.getFullYear() + 1);
console.log(date); // следующий год
Отображение даты и времени:
JavaScript позволяет отображать дату и время в различных форматах с помощью метода toString():
const date = new Date();
console.log(date.toString()); // выводит дату в формате "Fri Aug 20 2021 20:09:47 GMT+0300 (Eastern European Summer Time)"
Методы объекта Date также позволяют отображать даты в различных форматах без использования сторонних библиотек, например:
const date = new Date();
const year = date.getFullYear();
const month = date.toLocaleString('default', { month: 'long' });
const day = date.getDate();
const dayOfWeek = date.toLocaleString('default', { weekday: 'long' });
const time = date.toLocaleTimeString('en-US', { hour: 'numeric', minute: 'numeric', hour12: true });
const formattedDate = `${dayOfWeek}, ${month} ${day}, ${year}, ${time}`;
console.log(formattedDate); // выводит дату в формате "Friday, August 20, 2021, 8:24 PM"
Это основные возможности работы с датами и временем в JavaScript. Однако объект Date предоставляет и другие методы, которые можно использовать в зависимости от конкретных потребностей.