В процессе создания приложений важным компонентом является дата. Особенно актуален этот вопрос при работе с 1С.
В данной статье будет рассказано о том, как перевести дату в строку, раскрыты особенности ее вывода и отображения. Для примера будут взяты 1С и JavaScript.
JavaScript
Дата – это то, что знакомо каждому пользователю. Обычно она сочетается со временем. Отображает тот или иной промежуток: текущий, в прошлом или будущем. Обычно выражена:
- годом;
- днем;
- месяцем.
В JavaScript для создания даты используется объект Data. Он представляет собой точку на временной оси. Нужен для того, чтобы хранить не только дату, но и время. Точность – до миллисекунды.
Создается несколькими способами:
- С текущими параметрами. В процессе необходимо создать экземпляр объекта Date. Его параметры в строке «характеристик» не прописываются:.
- С указанием количества миллисекунд, отсчет которых начался с 1.01.1970: .
- Создание даты через ее указание объекту Date в виде строки. Язык постарается понять переданную информацию в строку, после чего выведет ее в виде даты. Преобразование осуществляется посредством метода Date.parse: .
- Дата с указанием параметров (год, месяц, день, часы, минуты, секунды, миллисекунды) через запятую. Обязательными тут выступают только год и месяц: .
Все это поможет в будущем провести преобразование даты в строку в JavaScript. А еще поможет использовать соответствующий элемент в любом приложении.
Получение компонентов
Иногда в JS нужно получить определенные компоненты времени и даты, а затем отобразить их в строке. Для этого выделяют следующие методы:
- getFullYear – отображение года (4 числа);
- getMonth – возврат месяца в формате числа от 0 до 11, где 0 – это январь, а 11 – декабрь;
- getDate – число месяца от 1 до 31;
- getHours – часы от 0 до 23 включительно;
- getMinutes – работа с минутами (0-59);
- hetSeconds – возврат секунд;
- getMilliseconds – работа с миллисекундами (0-999).
Перечисленные методы возвращают отдельные элементы времени и даты с учетом часового пояса. Во внимание принимается тот, что установлен на компьютере пользователя.
Выше – присутствие пользователя, если у него время равно UTC +10:00.
Установка компонентов
Рассматривая формат даты в JS, а также перевод соответствующих объектов в заданные строки, нужно понимать, как устанавливать отдельные элементы времени и data. Лишь после этого проводить все необходимые преобразования.
У JS используются такие методы объекта Date:
- setFullYear – установка года;
- setMonth – месяц;
- setDate – число;
- setHours – установка часов;
- setMinutes – минуты;
- setSeconds – работа с секундами;
- setMillisrconds – миллисекунды.
У года поддерживается дополнительная установка месяца и числа, у месяца – числа, у часов – минут, секунд, миллисекунд и так далее.
Выше – пример программного кода на JS. Для работы с часовым поясом UTC +0 используются методы «SetUTC…».
Перевод дат в строчки
Перевод даты в заданную строку в выбранном языке программирования – не такая сложная задача. С ней справится даже начинающий разработчик. Соответствующий процесс условно делится на 2 категории:
- В первой группе относят методы, которые выполняют перевод так, как это определено в браузере. Сюда приписывают: to String, toDareString, toTimeString, toUTCString.
- Ко второму типу относят методы, учитывающие часовой пояс и язык локального устройства. Это: toLocaleString, toLocaleDateString, toLocaleTimeSting.
Второй вариант предусматривает два необязательных параметра. Первый нужен для явного указания локали, второй – для непосредственного указания опций проводимого форматирования.
Если локаль не установлена явным методом или является undefined, браузер возьмет за основу при работе со строкой и датой/временем, что установлена по умолчанию.
Также здесь есть метод toISOString. Он преобразовывает (возвращает) в строку информацию в виде date и time в формате типа ISO.
Выше – наглядный пример работы соответствующего компонента языка разработки.
Метод для преобразований
Метод, который переводит date в строку, в JS носит название Date.parse. Он также преобразует строки, если они выполнены согласно стандартам RFC2822 или ISO 8601. Второй вариант должен иметь формат YYYY-MM-DDThh:ss.sssZ.
Здесь:
- YYYY – год;
- MM – месяц;
- DD – день из двух цифр;
- T – символ-разделитель;
- hh – часы;
- mm – минуты;
- ss – секунды;
- sss – миллисекунды;
- Z – символ, указывающий на работу с временем в формате типа UTC.
Если нужно задать конкретный часовой пояс, необходимо Z заменить значением +hh:mm или –hh:mm.
Если строка выражена не форматами, указанными выше, метод все равно будет выполнять необходимые преобразования. Результат непредсказуем. Это видно в коде выше.
В 1С
1С – популярное приложение, в котором предстоит работать с различной информацией. Время и date там встречается достаточно часто. Поэтому важно разобраться с тем, как провести преобразование заданной даты в строку в том или ином случае.
Для реализации соответствующей задачи используется функция типа Формат(). У нее два параметра:
- Значение. Те параметры, которым хочется придать тот или иной вид. Является обязательным для дальнейшей работы с элементами 1С.
- Форматная строка. Отражает весь смысл функции Формат(). Не является обязательным элементом.
Есть еще и функция Строка(). Она отличается тем, что с первой названной «операцией» по умолчанию для типов Число и Data произойдет возврат пустой строки.
Каждый параметр форматирования будет состоять из имени, знака равенства и значения того или иного параметра. Оно прописывается как в одинарных, так и в двойных кавычках. Второй вариант актуален для случаев, при которых значение параметра включает в себя символы, задействованные в синтаксисе форматной строки. Пример – знак «точка с запятой».
Внутри значения параметра допускается использование произвольных символов. Они отображаются так, как есть на самом деле. Самый простой пример – разделители, используемые при форматировании элементов, связанных со временем. Рекомендуется использовать одинарные кавычки, если подозревается, что символ будет воспринят системой неправильно.
Дата в строку
Перевод даты в строку в 1С выполнить не так уж трудно. За это отвечает ДФ (DF). Формат напоминает тот, что был при работе с JS. Тут стоит запомнить следующие формы представления информации:
- d – day без лидирующего нуля;
- dd – с лидирующим нулем;
- ddd – краткое название имеющегося дня недели;
- dddd – полная форма представления;
- M – moth без лидирующего нуля;
- MM – с лидирующим нулем;
- MMM – краткое название;
- MMMM – полное название;
- q – квартал;
- y – year без века и лидирующего нуля;
- yy – без века с лидирующим нулем;
- yyyy – с веком;
- h – 12-часовой пояс без лидирующих нулей;
- hh – он же, но с нулями;
- H – 24-часовой формат без 0;
- HH – он же с лидирующим 0;
- m – minutes без 0;
- mm – с 0;
- s – seconds без 0;
- ss – с 0;
- tt – отображение половины дня (AM или PM).
Строки с «названиями» не используются для форматной string поля вывода date. Ниже – наглядный пример работы с соответствующим кодом.
Иногда приходится использовать локальные форматы. Отображается он в зависимости от выставленных параметров:
- D – цифрами;
- DD – month прописью;
- T – полное время с поддержкой объединения с датой;
- DT – date/time.
Последний вариант – это использование пустого компонента (DE).
Выше – наглядный пример того, как соответствующий процесс выглядит при работе с 1С.
Теперь понятно, как выводить дату и время в том или ином случае. Лучше разобраться с соответствующими направлениями помогут специализированные компьютерные онлайн курсы. На них пользователей научат не только работать с 1С, но и писать приложения на различных языках программирования, включая JS и C++. В процессе обучения предстоит выполнять интересные домашние задания, получать богатый практический опыт. Пользователь сформирует свое первое портфолио, а также научится разработке на выбранном языке. Подтвердить знания он сможет при помощи электронного сертификата.
Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в Otus! Один из них — «Архитектор 1С«.