Фарматаванне даты ў JavaScript
Давайце цяпер навучымся выводзіць дату ў пэўным фармаце. Хай, напрыклад, мы хочам вывесці на экран бягучыя дзень, месяц і год у фармаце год-месяц-дзень.
Давайце зробім гэта:
let date = new Date();
console.log(date.getFullYear() + '-' + date.getMonth() + '-' + date.getDate());
Наш код, аднак, мае праблему: нумары месяцаў будуць пачынацца з нуля, а нам, хутчэй за ўсё, хацелася б, каб яны пачыналіся з адзінкі.
Выправім праблему:
let date = new Date();
console.log(date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate());
Наш код, аднак, усё роўна не дасканалы.
Але заўважыць гэта можна толькі ў пэўныя
месяцы і ў пэўныя дні. Хай, напрыклад,
зараз 5-га сакавіка 2020 года.
У гэтым выпадку наша дата выведзецца ў фармаце 2020-3-5. А нам хацелася б, каб дата выйшла ў фармаце 2020-03-05 - з нулямі перад нумарамі дняў і месяцаў з адной лічбы.
Для вырашэння праблемы напішам функцыю addZero,
якая будзе дадаваць нулі перад лікамі
ад 0 да 9:
function addZero(num) {
if (num >= 0 && num <= 9) {
return '0' + num;
} else {
return num;
}
}
Прымянім створаную функцыю і цяпер сапраўды атрымаем дату ў патрэбным нам фармаце:
let date = new Date();
console.log(
addZero(date.getFullYear()) + '-' +
addZero(date.getMonth() + 1) + '-' +
addZero(date.getDate())
);
Выведзіце на экран бягучую дату-час ў фармаце 12:59:59 31.12.2014. Выкарыстоўвайце для ўсіх частак даты (акрамя года) створаную намі функцыю для дадання нуля пры неабходнасці.