Сборка от 17 марта 2017 г


Сколько секунд уже прошло сегодня?



Download 9,9 Mb.
bet318/349
Sana26.04.2022
Hajmi9,9 Mb.
#582433
TuriУчебник
1   ...   314   315   316   317   318   319   320   321   ...   349
Bog'liq
ilja kantor sovremennyj uchebnik-1chast PdfToWord

Сколько секунд уже прошло сегодня?


Для вывода достаточно сгенерировать объект Date , соответствующий началу дня, т.е. «сегодня» 00 часов 00 минут 00 секунд, и вычесть его из текущей даты.


Полученная разница – это как раз количество миллисекунд от начала дня, которое достаточно поделить на 1000 , чтобы получить секунды:

function getSecondsToday() { var now = new Date();


// создать объект из текущей даты, без часов‐минут‐секунд


var today = new Date(now.getFullYear(), now.getMonth(), now.getDate());

var diff = now ‐ today; // разница в миллисекундах return Math.floor(diff / 1000); // перевести в секунды


}

alert( getSecondsToday() );


Альтернативное решение – получить часы/минуты/секунды и преобразовать их все в секунды:


function getSecondsToday() { var d = new Date();


return d.getHours() * 3600 + d.getMinutes() * 60 + d.getSeconds();
};

К условию





Сколько секунд ‑ до завтра?


Для получения оставшихся до конца дня миллисекунд нужно из «завтра 00 ч 00 мин 00 сек» вычесть текущее время. Чтобы сгенерировать «завтра» – увеличим текущую дату на 1 день:


function getSecondsToTomorrow() { var now = new Date();


// создать объект из завтрашней даты, без часов‐минут‐секунд
var tomorrow = new Date(now.getFullYear(), now.getMonth(), now.getDate()+1);

var diff = tomorrow ‐ now; // разница в миллисекундах return Math.round(diff / 1000); // перевести в секунды


}

К условию





Вывести дату в формате дд.мм.гг


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





  1. День можно получить как date.getDate() . При необходимости добавим ведущий ноль:

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





  1. date.getMonth() возвратит месяц, начиная с нуля. Увеличим его на 1:

var mm = date.getMonth() + 1; // месяц 1‐12 if (mm < 10) mm = '0' + mm;





  1. 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'


Открыть решение с тестами в песочнице.

К условию






Download 9,9 Mb.

Do'stlaringiz bilan baham:
1   ...   314   315   316   317   318   319   320   321   ...   349




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish