Вывести дату в формате дд.мм.гг
важность: 3
Напишите функцию formatDate(date)
, которая выводит дату date
в формате дд.мм.гг
:
Например:
var d = new Date(2014, 0, 30); // 30 января 2014
alert( formatDate(d) ); // '30.01.14'
P.S. Обратите внимание, ведущие нули должны присутствовать, то есть 1 января 2001 должно быть 01.01.01, а не 1.1.1.
Получим компоненты один за другим.
-
День можно получить как
date.getDate()
. При необходимости добавим ведущий ноль:var dd = date.getDate(); if (dd < 10) dd = '0' + dd;
-
date.getMonth()
возвратит месяц, начиная с нуля. Увеличим его на 1:var mm = date.getMonth() + 1; // месяц 1-12 if (mm < 10) mm = '0' + mm;
-
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(2014, 0, 30); // 30 Янв 2014
alert( formatDate(d) ); // '30.01.14'
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;
}