Задан объект даты:
const date = new Date('July 22, 2018 07:22:13')существует множество методов, которые будут генерировать строку, представляющую эту дату.
Есть несколько встроенных из них. Я перечисляю их все вместе с комментарием, в котором показан пример вывода:
date.toString() // "Sun Jul 22 2018 07:22:13 GMT+0200 (Central European Summer Time)"
date.toTimeString() //"07:22:13 GMT+0200 (Central European Summer Time)"
date.toUTCString() //"Sun, 22 Jul 2018 05:22:13 GMT"
date.toDateString() //"Sun Jul 22 2018"
date.toISOString() //"2018-07-22T05:22:13.000Z" (ISO 8601 format)
date.toLocaleString() //"22/07/2018, 07:22:13"
date.toLocaleTimeString() //"07:22:13"
Конечно, вы не ограничиваетесь этим – вы можете использовать более низкоуровневые методы, чтобы получить значение из даты и получить любой результат, который вы хотите:
date.getDate() //22
date.getDay() //0 (0 means sunday, 1 means monday..)
date.getFullYear() //2018
date.getMonth() //6 (starts from 0)
date.getHours() //7
date.getMinutes() //22
date.getSeconds() //13
date.getMilliseconds() //0 (not specified)
date.getTime() //1532236933000
date.getTimezoneOffset() //-120 (will vary depending on where you are and when you check - this is CET during the summer). Returns the timezone difference expressed in minutes
Все это зависит от текущего часового пояса компьютера. Существуют эквивалентные версии этих методов UTC, которые возвращают значение UTC, а не значения, адаптированные к вашему текущему часовому поясу:
date.getUTCDate() //22 date.getUTCDay() //0 (0 means sunday, 1 means monday..) date.getUTCFullYear() //2018 date.getUTCMonth() //6 (starts from 0) date.getUTCHours() //5 (not 7 like above) date.getUTCMinutes() //22 date.getUTCSeconds() //13 date.getUTCMilliseconds() //0 (not specified)
Оригинал: “https://flaviocopes.com/how-to-format-date-javascript/”