Мастер-классы по Javascript Екатеринбург Ростов-на-Дону Москва Узнать больше...
Содержание (скрыть) Содержание (показать)

Вывести текущую дату

Напишите функцию formatDate(date), которая выводит дату date в формате дд.мм.гг:

Например:

var d = new Date(2011, 0, 30); // 30 января 2011
alert( formatDate(d) ); // '30.01.11'

P.S. Обратите внимание, ведущие нули должны присутствовать, то есть 1 января 2011 должно быть 01.01.11, а не 1.1.11.

Решение
Решение

Получим компоненты один за другим.

  1. День можно получить как date.getDate(). При неободимости добавим ведущий ноль:
    var dd = date.getDate();
    if (dd<10) dd= '0'+dd;
    
  2. date.getMonth() возвратит месяц, начиная с нуля. Увеличим его на 1:
    var mm = date.getMonth() + 1;  // месяц 1-12
    if (mm<10) mm= '0'+mm;
    
  3. date.getFullYear() вернет год в 4-значном формате. Чтобы сделать его двузначным - воспользуемся оператором взятия остатка '%':
    var yy = date.getFullYear() % 100;
    if (yy<10) yy= '0'+yy;
    
    Заметим, что год, как и другие компоненты, может понадобиться дополнить нулем слева, причем возможно что yy == 0 (например, 2000 год). При сложении со строкой 0+'0' == '00', так что будет все в порядке.

Полный код:

function formatDate(date) {

  var dd = date.getDate()
  if ( dd < 10 ) dd = '0' + dd;

  var mm = date.getMonth()+1
  if ( mm < 10 ) mm = '0' + mm;

  var yy = date.getFullYear() % 100;
  if ( yy < 10 ) yy = '0' + yy;

  return dd+'.'+mm+'.'+yy;
}

var d = new Date(2011, 0, 30);  // 30 Jan 2011
alert( formatDate(d) );  // '30.01.11'

#185
Наверх

Реклама

Нашли опечатку?

Нашли опечатку на сайте? Что-то кажется странным?
Выделите соответствующий текст и нажмите Ctrl+Enter!

Последние Комментарии

Помоги другим!

Помоги другим узнать о хорошей статье!