Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.06.2020, 20:04
Новичок на форуме
Отправить личное сообщение для rightuser Посмотреть профиль Найти все сообщения от rightuser
 
Регистрация: 18.06.2020
Сообщений: 2

Отсутствие нулей при выводе времени + неправильный месяц
Приветствую форумчан и сразу же предупреждаю, что не имею большого опыта работы с JS и вопрос может показаться нубским, но прошу строго не судить.
Суть в следующем:
Использую следующие скрипты для вывода времени:
<script>
Data = new Date();
Year = Data.getFullYear();
Month = (Data.getMonth()+ 1);
Day = Data.getDate();
Hour = Data.getHours();
Minutes = Data.getMinutes();
Seconds = Data.getSeconds();
</script>
<script>
document.write(Day + "." );
document.write(Month + ".");
document.write(Year + ", ");
document.write(Hour + ":" );
document.write(Minutes);
</script>

Проблему с некорректным выводом месяца (показывает на месяц назад) я решил подобным "костылём": просто добавил "+1" к имеющемуся значению. Не знаю, насколько это корректно, поэтому буду рад узнать, почему происходит подобный баг и какие есть более целесообразные методы его устранения.

Но больше всего меня интересует следующее: когда числовые значения являются однозначными, то они отображаются без нуля в начале: 19:02 показывается как 19:2, 08:41 - как 8:41, 18.06.2020 - как 18.6.2020. Как можно исправить это? Буду благодарен за решение.

UPD1: приношу извинения за, возможно, некорректный раздел. Сам пользуюсь Firefox Nightly, последний на сегодня билд.
UPD2: всё решено, спасибо рони.

Последний раз редактировалось rightuser, 19.06.2020 в 00:18. Причина: Решено
Ответить с цитированием
  #2 (permalink)  
Старый 18.06.2020, 20:19
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

rightuser,

Intl.DateTimeFormat
Ответить с цитированием
  #3 (permalink)  
Старый 18.06.2020, 22:11
Новичок на форуме
Отправить личное сообщение для rightuser Посмотреть профиль Найти все сообщения от rightuser
 
Регистрация: 18.06.2020
Сообщений: 2

Вывод даты с применением Intl.DateTimeFormat
Сообщение от рони Посмотреть сообщение
rightuser,

Intl.DateTimeFormat
Посмотрел, спасибо. На получение даты применил следующее:

<script>
		Data = new Date();
		Year = Data.getFullYear();
		Month = (Data.getMonth()+ 1);
		Day = Data.getDate();
		Hour = Data.getHours();
		Minutes = Data.getMinutes();
		Seconds = Data.getSeconds();
		
		var formatter = new Intl.DateTimeFormat("ru", {
		year: "numeric",
		month: "2-digit",
		day: "2-digit",
		hour: "2-digit",
		minute: "2-digit"
});
		</script>


А как можно вывести день, месяц, год, часы и минуты используя document.write, чтобы это произошло с учётом заданных условий? И корректны ли они вообще? Спасибо.
Ответить с цитированием
  #4 (permalink)  
Старый 18.06.2020, 22:24
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

форматирование даты
rightuser,
<!doctype html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<script>
let Data = new Date();
let formatter = new Intl.DateTimeFormat("ru", {
		year: "numeric",
		month: "2-digit",
		day: "2-digit",
		hour: "2-digit",
		minute: "2-digit"
      });
document.write(formatter.format(Data))
</script>

</body>
</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема при выводе изображения. BuT Общие вопросы Javascript 9 03.08.2013 17:39
Подключение другого CSS при выводе через IFRAME Smokvin Events/DOM/Window 7 16.07.2012 12:03
определение времени при событии mouseOver greenred Events/DOM/Window 1 13.02.2012 23:28
Кракозябры при выводе Golovastik (X)HTML/CSS 4 04.12.2010 21:59
Как разделять страницы при выводе отчета ilshat Events/DOM/Window 7 10.12.2009 10:24