Класс Date позволяет работать с датой и временем. Создаются экземпляры класса так:
<Экземпляр класса> = new Date();
Класс поддерживает следующие методы:
tostring() преобразует дату в строку и возвращает ее:
c_Date = new Date();
document.write(c_Date.toString());
// Sun Apr 29 18:47:27 UTC+0400 2007
toLocaleString() преобразует дату в строку, используя интернациональные установки системы, и возвращает ее:
c_Date = new Date();
document.write(c_Date.toLocaleString());
// 29 апреля 2007 г. 18:49:09
valueOf() позволяет определить количество миллисекунд, прошедших с 01.01.1970 00:00:00:
c_Date = new Date();
document.write(c_Date.valueOf());
// 1177858369906
getDate() возвращает день месяца (от 1 до 31):
c_Date = new Date();
document.write(c_Date.getDate());
// 29
getDay() дает возможность узнать день недели (от 0 для воскресенья до 6 — для субботы):
m_Mass = new Array("воскресенье", "понедельник", "вторник", "среда", "четверг", "пятница", "суббота");
c_Date = new Date();
document.write(m_Mass[c_Date.getDay()]);
// воскресенье
getMonth () возвращает месяц (от 0 для января до 11 — для декабря):
m_Mass = new Array("январь", "февраль", "март", "апрель", "май", "июнь", "июль", "август", "сентябрь", "октябрь", "ноябрь", "декабрь");
c_Date = new Date();
document.write(m_Mass[c_Date.getMonth()]);
// апрель
// Для получения номера текущего месяца к возвращаемому значению
// необходимо прибавить единицу.
var m_Var = c_Date.getMonth() + 1;
document.write(m_Var);
// 4
getFullYear() позволяет определить год:
c_Date = new Date();
document.write(c_Date.getFullYear());
// 2007
getHours() возвращает час (от 0 до 23):
c_Date = new Date();
document.write(c_Date.getHours());
// 18
getMinutes() позволяет получить минуты (от 0 до 59):
c_Date = new Date();
document.write(c_Date.getMinutes());
// 49
getSeconds() возвращает секунды (от 0 до 59):
c_Date = new Date();
document.write(c_Date.getSeconds());
// 9
Рассмотрим на примере работу с датой и временем (листинг 3.27).
Листинг 3.27. Текущая дата и время
<HTML>
<HEAD>
<TITLE>Текущая дата и время</TITLE>
<SCRIPT language="JavaScript">
<!--
function f_Date(m_Str) {
m_Str += ""; // Преобразуем число в строку
m_Str2 = new String(m_Str);
if (m_Str2.length==1) return ("0" + m_Str2);
else return m_Str2;
}
function f_Year(m_Year) {
m_Year += ""; // Преобразуем число в строку
m_Year2 = new String(m_Year);
return m_Year2.substr(2);
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<SCRIPT language="JavaScript">
<!--
c_Date = new Date();
var m_Date;
m_Day = new Array("воскресенье", "понедельник", "вторник", "среда",
"четверг", "пятница", "суббота");
m_Month = new Array("января", "февраля", "марта", "апреля", "мая",
"июня", "июля", "августа", "сентября", "октября", "ноября", "декабря");
m_Date = "Сегодня <BR>" + m_Day[c_Date.getDay()] + " ";
m_Date += c_Date.getDate() + " ";
m_Date += m_Month[c_Date.getMonth()] + " ";
m_Date += c_Date.getFullYear() + " ";
m_Date += c_Date.getHours() + ":";
m_Date += f_Date(c_Date.getMinutes()) + ":";
m_Date += f_Date(c_Date.getSeconds()) + "<BR>";
m_Date += f_Date(c_Date.getDate()) + ".";
m_Date += f_Date(c_Date.getMonth() + 1) + ".";
m_Date += f_Year(c_Date.getFullYear());
document.write(m_Date);
//-->
</SCRIPT>
</BODY>
</HTML>