JavaScript
Что такое методы дат в JavaScript
Как работать с датами JavaScript
С датами в JavaScript может быть сложно работать из-за их сложности. Это может показаться не таким уж сложным, но здесь важно запомнить их. В отличие от фреймворков Node.js, даты ванильного JavaScript не имеют таких методов, как .add()
или .subtract()
, любое количество дней или лет.
Инициализация дат
Существует 4 конкретных способа создания/инициализации новой даты.
new Date()
— таким образом вы можете создать новую дату именно в тот момент, когда этот метод вызывается в файле скрипта. Пример возврата new Date()
—
Mon Jun 13 2022 16:59:37 GMT+0200 (CEST)
.
new Date(millisecond)
— Таким образом, вы можете создать новую дату с добавлением даты January 1, 1970
в миллисекундах. Пример возврата new Date(1000)
—
Thu Jan 01 1970 01:00:01 GMT+0100 (CEST)
.
new Date(date_string)
— таким образом вы можете создать новую дату, передав ей строку даты, и строка будет проанализирована. Пример строки даты —
"January 8, 2020 15:00:00"
.
new Date(year, month, day, hour, minute, second)
— таким образом вы можете создать новую дату на основе нескольких переданных ей свойств. Это лучший способ создать дату, если вам не нужно текущее время.
Количество параметров может быть от 2 до 6, переходя слева. Месяцы имеют индекс 0, поэтому месяцы могут быть от 0 до 11.
Пример возврата new Date(2020, 0, 8, 15, 0, 0)
— Wed Jan 08 2020 15:00:00 GMT+0100 (CEST)
.
Методы даты
Вот список наиболее важных и полезных методов, которые вы можете использовать в своем проекте, связанном со структурами дат в JavaScript.
Связанные с датой
.getFullYear()
— возвращает полный год, т.е. г.: 2020
.getMonth()
— возвращает индекс месяца в году (0–11), т.е. г.: 0
.getDate()
— возвращает день в месяце, т.е. г.: 31
.getDay()
— возвращает индекс дня в неделе (0–6), т.е. г.: 6
Связанный со временем
.getHours()
— возвращает часы, т.е. г.: 15
.getMinutes()
— возвращает минуты, т.е. г.: 20
.getSeconds()
— возвращает секунды, т.е. г.: 35
.getTime()
— возвращает дату в миллисекундах с January 1, 1970
, т.е. г.: 1636725600000
Связанный с локалью
.toLocaleString()
— возвращает составную строку даты и времени, т.е. г.: 11/12/2021, 3:00:00 PM
.toLocaleDateString()
— возвращает простой формат даты, т.е. г.: 11/12/2021
.toLocaleTimeString()
— возвращает простой формат времени, т.е. г.: 3:00:00 PM
Связанный с набором
Вы можете установить отдельные параметры даты аналогично тому, как вы их получаете, просто замените ключевое слово в методе get
→ set
соответствующим параметром. Например, .getHours()
→ .setHours(hours)
.
UTC-связанный
Если вы хотите получить/установить отдельную часть даты, мы можем сделать это аналогично тому, как мы их получаем и устанавливаем, просто добавьте ключевое слово UTC
после get
/set
. Например, .getFullYear()
→ .getUTCFullYear()
.
Заключение
Даты очень важны для функционирования подпрограмм, связанных с датой и временем. Если вы работаете в Node.js, может быть лучше установить библиотеку NPM, которая позаботится о ваших датах, например Moment.js
. Если вы используете ванильный JavaScript, я надеюсь, что эта статья помогла вам немного прояснить ситуацию. Вы всегда можете вернуться сюда и использовать его как шпаргалку.
Дополнительные материалы на PlainEnglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter и LinkedIn. Посетите наш Community Discord и присоединитесь к нашему Коллективу талантов.