Для получения компонент местных даты и времени объекта Date используются следующие функции:
· getFullYear() – получает значение года (четыре цифры);
· getMonth() – получает значение номера месяца (от 0 – январь до 11 – декабрь);
· getDate() – получает значение дня месяца (число от 1 до 31);
· getDay() – получает значение номера дня недели месяца (от 0 – воскресенье до 6 –суббота);
· getHours() – получает значение времени дня (число от 0 до 23);
· getMinutes()– получает значение времени для минут в текущем часе (число от 0 до 59);
· getSeconds() – получает значение времени для секунд в текущей минуте (число от 0 до 59);
· getMilliSeconds() – получает значение времени для миллисекунд в текущей секунде (число от 0 до 999);
· getTimezoneOffset() – получает разницу в минутах между местным временем и временем UTC;
· getTime() – получает внутреннее время в миллисекундах с 1 января 1970 года.
Функции getUTCFullYear(), getUTCMonth(), getUTCDate(), getUTCDay(), getUTCHours(), getUTCMinutes(), getUTCSeconds() и getUTCMilliSeconds() действуют аналогично приведенным выше функциям, но для компонентов времени UTC.
Пример 4.4.54. Использование функций получения компонент даты и времени объекта Date:
|
|
// Функция вывода значения двумя символами
function fixedField(parm)
{
// Преобразование в число
parm = new Number(parm);
// Добавление символа "0" впереди,
// если значение параметра меньше 10
// и возврат полученного значения
return (parm < 10)? ("0" + parm): parm;
}
// Функция вывода UTC в стандартной форме
function timeOffset(offset)
{
// Получение компоненты смещения UTC для часов
hourOffset = Math.floor(Math.abs(offset/60));
// Получение компоненты смещения UTC для минут
minuteOffset = Math.abs(offset%60);
// Установка знака смещения
// как первого символа строки
offsetString = (offset > 0)? "+": "-";
// Формирование строки смещения
offsetString += fixedField(hourOffset) +
fixedField(minuteOffset);
// Возврат строки смещения
return offsetString;
}
…
// Массив наименований дней недели
weekDay = ["воскресенье", "понедельник",
"вторник", "среда", "четверг", "пятница", "суббота"];
// Определение текущей даты и времени
currentTime = new Date();
// Вывод текущей даты в сжатом виде
alert("Дата: " + fixedField(currentTime.getDate()) + "." +
fixedField(currentTime.getMonth() +1) + "." +
fixedField(currentTime.getFullYear()) + ", " +
weekDay[currentTime.getDay()]);
// Вывод текущего времени в сжатом виде,
// а также смещения от UTC в стандартном виде
alert("Время: " + fixedField(currentTime.getHours()) +
":" + fixedField(currentTime.getMinutes()) + ":" +
fixedField(currentTime.getSeconds()) + " UTC" +
timeOffset(currentTime.getTimezoneOffset()));
Этот фрагмент сценария получает компоненты текущей даты и времени и выводит их отдельно в сжатой форме с помощью функции alert(). Значение смещения от UTC представляется в стандартной форме: символы "UTC", знак смещения (символ "+" для смещения к западу от нулевого меридиана или символ "+" – для смещения к востоку), две цифры смещения часов и две цифры смещения минут.
Вывод этого фрагмента сценария имеет следующий вид: