Найти в Дзене
Retr0

JavaScript гайд по временам

Недавно вышел новый объект Date. Он содержит дату и время, а также предоставляет методы управления ими. Например, его можно использовать для хранения времени создания/изменения, для измерения времени или просто для вывода текущей даты ,ну что опробуем? Создание Для создания нового объекта Date нужно вызвать конструктор new Date() с одним из следующих аргументов: let now = new Date(); Создать объект Date с временем, равным количеству миллисекунд (тысячная доля секунды), прошедших с 1 января 1970 года UTC+0 let Jan01_1970 = new Date(0); alert( Jan01_1970 ); let Jan02_1970 = new Date(24 * 3600 * 1000); alert( Jan02_1970 ); Целое число, представляющее собой количество миллисекунд, прошедших с начала 1970 года, называется таймстамп (англ. timestamp). Это – легковесное численное представление даты. Из таймстампа всегда можно получить дату с помощью new Date(timestamp) и преобразовать существующий объект Date в таймстамп, используя метод date.getTime() (см. ниже). Датам до 1 января 1970 б
Оглавление

Недавно вышел новый объект Date. Он содержит дату и время, а также предоставляет методы управления ими.

Например, его можно использовать для хранения времени создания/изменения, для измерения времени или просто для вывода текущей даты ,ну что опробуем?

Создание

Для создания нового объекта Date нужно вызвать конструктор new Date() с одним из следующих аргументов:

let now = new Date();

Создать объект Date с временем, равным количеству миллисекунд (тысячная доля секунды), прошедших с 1 января 1970 года UTC+0

let Jan01_1970 = new Date(0);
alert( Jan01_1970 );
let Jan02_1970 = new Date(24 * 3600 * 1000);
alert( Jan02_1970 );

Целое число, представляющее собой количество миллисекунд, прошедших с начала 1970 года, называется таймстамп (англ. timestamp).

Это – легковесное численное представление даты. Из таймстампа всегда можно получить дату с помощью new Date(timestamp) и преобразовать существующий объект Date в таймстамп, используя метод date.getTime() (см. ниже).

Датам до 1 января 1970 будут соответствовать отрицательные таймстампы.

Если аргумент всего один, и это строка, то из неё «прочитывается» дата. Алгоритм разбора – такой же, как в Date.parse, который мы рассмотрим позже.

new Date(year, month, date, hours, minutes, seconds, ms)

Создать объект Date с заданными компонентами в местном часовом поясе. Обязательны только первые два аргумента.

  • month начинается с 0 (январь) по 11 (декабрь).
  • year должен состоять из четырёх цифр: значение 2013 корректно, 98 – нет.

Например:

new Date(2011, 0, 1, 0, 0, 0, 0); // // 1 Jan 2011, 00:00:00

new Date(2011, 0, 1); // то же самое, так как часы и проч. равны 0

Получение даты

Существуют методы получения года, месяца и т.д. из объекта Date:

getFullYear()

getDate()

getHours(), getMinutes(), getSeconds(), getMilliseconds()

Не знаю почему, но в JavaScript нет никого getYear() есть только getFullYear()

Также можно получить День недели getDay()

Вернуть день недели от 0 (воскресенье) до 6 (суббота). Несмотря на то, что в ряде стран за первый день недели принят понедельник, в JavaScript начало недели приходится на воскресенье.

Date.now()

Если нужно просто измерить время данное сейчас, то объект Date.now() вам подойдет.

Он существует только для одного узнать время сейчас

Семантически он эквивалентен new Date().getTime(), однако метод не создаёт промежуточный объект Date. Так что этот способ работает быстрее и не нагружает сборщик мусора.

Данный метод используется из соображений удобства или когда важно быстродействие, например, при разработке игр на JavaScript или других специализированных приложений.

Также этим кодом можно узнавать за сколько был обработан код

let start = Date.now();
for (let i = 0; i < 100000; i++) {
let doSomething = i * i * i;
}
let end = Date.now();
alert( `Цикл отработал за ${end - start} миллисекунд` );

Разбор строки с датой

Метод Date.parse(str) считывает дату из строки.

Формат строки должен быть следующим: YYYY-MM-DDTHH:mm:ss.sssZ

Возможны и более короткие варианты, например, YYYY-MM-DD или YYYY-MM, или даже YYYY.

Вызов Date.parse(str) обрабатывает строку в заданном формате и возвращает таймстамп (количество миллисекунд с 1 января 1970 года UTC+0). Если формат неправильный, возвращается NaN.

Например:

let ms = Date.parse('2012-01-26T13:51:50.417-07:00');

alert(ms);

Итог

Сегодня мы узнали что-то интересное если вам понравилось то поставте ляйк и допивайте чаёк и идите читать другие статьи, всем пока.