СТРАНИЦА   № 77« предыдущая  |  содержание  |  следующая »

Как узнать, сколько дней осталось до часа Икс?

Источник информации: Заметки HTML кодера

Недавно для сайта московского кинофестиваля мне необходимо было написать скриптик, который бы определял, сколько же дней осталось до открытия феста 21 июня 2002 года. Это мне было нужно для вывода надписи типа «До открытия кинофестиваля осталось 20 дней».

Разницу между датами (текущей и «часа Икс») найти несложно:

var oToday = new Date(); // текущая дата
var sTime = "June 21, 2002 " + oToday.getHours() + ":" + oToday.getMinutes() + ":" + oToday.getSeconds(); // задаём время с точностью до секунды — это не педантизм, а важная деталь, избавляющая от багов при вычислении разницы между датами
var oDeadLineDate = new Date(sTime); // собственно устанавливаем «час Икс»
var nDaysLeft = oDeadLineDate > oToday ? Math.ceil((oDeadLineDate - oToday) / (1000 * 60 * 60 * 24)) : null; // а тут мы вычисляем, сколько же осталось дней — находим разницу в миллисекундах и переводим её в дни

Итак, мы определили, сколько же осталось дней до знаменательного события. Чудесно.

А теперь в игру вступает великий и могучий русский язык. Дело в том, что слова «осталось … дней» нужно выводить иногда как «остался … день», «осталось … дня» и т.п.

Поэтому необходим следующий код, отслеживающий закономерности:

Поскольку начало XXIV кинофестиваля уже свершившийся факт, для примера приведу, сколько дней осталось до моего дня рождения ;-)


 

« предыдущая  |  содержание  |  следующая »

 

Оставить комментарий

Знаете ли Вы, что только в 1990-х доплеровские измерения радиотелескопами показали скорость Маринова для CMB (космического микроволнового излучения), которую он открыл в 1974. Естественно, о Маринове никто не хотел вспоминать. Подробнее читайте в FAQ по эфирной физике.

Последнее обновление: четверг 28 ноября 2024 г.
Bourabai Research Institution home page

Bourabai Research - Технологии XXI века Bourabai Research Institution