<MyRusakov.ru />

Создание игр на Unreal Engine 4

Создание игр на Unreal Engine 4

Данный курс научит Вас созданию игр на Unreal Engine 4. Курс состоит из 12 модулей, в которых Вы с нуля освоите этот движок и сможете создавать самые разные игры.

В курсе Вы получите всю необходимую теоретическую часть, а также увидите массу практических примеров. Дополнительно, почти к каждому уроку идут упражнения для закрепления материала.

Помимо самого курса Вас ждёт ещё 5 бесплатных ценных Бонусов: «Динамическая смена дня и ночи», «Создание динамической погоды», «Создание искусственного интеллекта для NPC», «Создание игры под мобильные устройства» и «Создание прототипа RPG с открытым миром».

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Зачем Вы изучаете программирование/создание сайтов?

Текущие дата и время в javascript

Текущие дата и время в javascript

Многие приложения, которые вы создаете, будут иметь какой-то компонент даты, будь то дата создания ресурса или временная метка действия. Работа с форматированием даты и метки времени может быть утомительной. В этой статье вы узнаете, как получить текущую дату в различных форматах в JavaScript.

Объект даты JavaScript

JavaScript имеет встроенный объект Date, который хранит дату и время и предоставляет методы для их обработки. Чтобы создать новый экземпляр объекта Date, используйте ключевое слово new:


const date = new Date();

//Объект Date содержит число, представляющее миллисекунды, прошедшие с эпохи, то //есть 1 января 1970 года.

//Вы можете передать строку даты конструктору даты, чтобы создать объект для //указанной даты:

const date = new Date('Jul 12 2011');

Чтобы получить текущий год, используйте метод экземпляра getFullYear() объекта Date. Метод getFullYear() возвращает год указанной даты в конструкторе Date:


const currentYear = date.getFullYear();
console.log(currentYear); //2020


//Точно так же существуют методы получения текущего дня месяца и текущего месяца:
const today = date.getDate();
const currentMonth = date.getMonth() + 1; 

Метод getDate() возвращает текущий день месяца (1-31).

Метод getMonth() возвращает месяц указанной даты. Один момент, который следует отметить о методе getMonth(), заключается в том, что он возвращает 0-индексированные значения (0-11), где 0-для января и 11-для декабря. Следовательно, добавление 1 для нормализации значения месяца.

Дата сейчас.

now() - это статический метод объекта Date. Он возвращает значение в миллисекундах, представляющее время, прошедшее с начала эпохи. Вы можете передать миллисекунды, возвращенные методом now(), в конструктор Date для создания экземпляра нового объекта Date:


const timeElapsed = Date.now();
const today = new Date(timeElapsed);

Форматирование Даты.

Вы можете отформатировать дату в несколько форматов (GMT, ISO и т. д.), Используя методы объекта Date.


//Метод toDateString() возвращает дату в удобочитаемом формате:
today.toDateString(); // "Sun Jun 14 2020"


//Метод toISOString() возвращает дату, которая следует расширенному формату ISO 8601:
today.toISOString(); // "2020-06-13T18:30:00.000Z"

//Метод toUTCString() возвращает дату в формате часового пояса UTC:
today.toUTCString(); // "Sat, 13 Jun 2020 18:30:00 GMT"

//Метод toLocaleDateString() возвращает дату в формате, зависящем от местоположения:
today.toLocaleDateString(); // "6/14/2020"

Полную ссылку на методы Date можно найти в документации MDN.

Пользовательская Функция Форматирования Даты.

Помимо форматов, упомянутых в предыдущем разделе, ваше приложение может иметь другой формат данных. Он может быть в формате yy/dd/mm или yyyy-dd-mm, или что-то подобное.

Чтобы решить эту проблему, было бы лучше создать многоразовую функцию, чтобы ее можно было использовать в нескольких проектах.

Итак, давайте создадим служебную функцию, которая будет возвращать дату в формате, указанном в аргументе функции:


const today = new Date();

function formatDate(date, format) {
  //
}

formatDate(today, 'mm/dd/yy');

Вам нужно заменить строки "mm", "dd", "yy" соответствующими значениями месяца, дня и года из строки формата, переданной в аргументе.

Для этого используется метод replace(), как показано ниже:

format.replace('mm', date.getMonth() + 1);

Но это приведет к большому количеству цепочек методов и затруднит их /поддержание при попытке сделать функцию более гибкой:


format.replace('mm', date.getMonth() + 1)
    .replace('yy', date.getFullYear())
    .replace('dd', date.getDate());

Вместо цепных методов можно использовать регулярное выражение с помощью метода replace().

Сначала создайте объект, который будет представлять пару ключ-значение подстроки и ее соответствующее значение:


const formatMap = {
  mm: date.getMonth() + 1,
    dd: date.getDate(),
    yy: date.getFullYear().toString().slice(-2),
    yyyy: date.getFullYear()
};

Затем используйте регулярное выражение для сопоставления и замены строк:

formattedDate = format.replace(/mm|dd|yy|yyy/gi, matched => map[matched]);

Полная функция выглядит следующим образом:


function formatDate(date, format) {
    const map = {
        mm: date.getMonth() + 1,
        dd: date.getDate(),
        yy: date.getFullYear().toString().slice(-2),
        yyyy: date.getFullYear()
    }

    return format.replace(/mm|dd|yy|yyy/gi, matched => map[matched])
}

При желании можно добавить возможность форматирования временных меток в этой функции.

Надеюсь, что теперь у вас есть лучшее понимание объекта Date в JavaScript. Вы также можете использовать другие сторонние библиотеки, такие как datesj и moment, для обработки дат в вашем приложении.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.