Это единственные функции Date / Time jQuery, которые вам когда-либо понадобятся. Он работает лучше, чем любые другие библиотеки дат / времени, и имеет минимальные издержки, гарантированную скорость и точность.
Включает в себя функции: получить дату, конвертировать дату, действительную дату, строку в дату, високосный год, сравнить дату, дату форматирования, часовой пояс и кучу других !!!
JQuery Дата / Время Полный Листинг
/ * ___ ФАЙЛ: «JQUERY4U.datetime.js» ___ * /
; (Функция ($)
{
/ **
* JQuery Дата и время функции - Полный список
* /
var JQUERY4U = JQUERY4U || {};
JQUERY4U.DATETIME =
{
/ **
* Имя этого класса (используется для обработки ошибок и / или отладки)
* @type String
* /
имя: 'JQUERY4U.DATETIME',
init: function ()
{
JQUERY4U.UTIL.handleErrors (это);
Date.prototype.JQUERY4UFormat = this.format;
},
/ **
* Вернуть сегодняшнюю дату в формате дд / мм / гггг
* @returns {String} Дата в формате дд / мм / гггг
* /
todaysDate: function ()
{
return this.futureDateDays (0);
},
/ **
* Вернуть завтрашнюю дату в формате дд / мм / гггг
* @returns {String} Дата в формате дд / мм / гггг
* /
завтрашний день: функция ()
{
return this.futureDateDays (1);
},
/ **
* Дата возвращения через 7 дней в формате дд / мм / гггг
* @returns {String} Дата в формате дд / мм / гггг
* /
weekFromToday: функция ()
{
return this.futureDateDays (7);
},
/ **
* Вернуть первый день следующего месяца
* @returns {String} Дата в формате дд / мм / гггг
* /
firstDayNextMonth: function ()
{
var today = new Date ();
nextMonth = new Date (today.getFullYear (), today.getMonth () + 1, 1);
nextMonth.getDate () + '/' + (nextMonth.getMonth () + 1) + '/' + nextMonth.getFullYear ();
вернуть this.leadingZero (nextMonth.getDate ()) + '/' + this.leadingZero (nextMonth.getMonth () + 1) + '/' + nextMonth.getFullYear ();
},
/ **
* Возвращает х число дат даты в будущем в формате дд / мм / гггг
* @param {Integer} days Количество дней в будущем
* @returns {String} Дата в формате дд / мм / гггг
* /
futureDateDays: функция (дни)
{
var futureDate = new Date ();
futureDate.setDate (futureDate.getDate () + days);
вернуть this.leadingZero (futureDate.getDate ()) + '/' + this.leadingZero (futureDate.getMonth () + 1) + '/' + this.leadingZero (futureDate .getFullYear ());
},
/ **
* Вернуть текущее время в формате ЧЧММ
* @returns {String} Время в формате ЧЧММ (например, 23:12)
* /
timeHHMM: функция ()
{
var today = new Date ();
вернуть this.leadingZero (today.getHours ()) + this.leadingZero (today.getMinutes ());
},
/ **
* Вернуть текущее время в формате ЧЧММСС
* @returns {String} Время в формате ЧЧММСС (например, 23:12:33)
* /
timeHHMMSS: функция ()
{
var today = new Date ();
вернуть this.leadingZero (today.getHours ()) + ':' + this.leadingZero (today.getMinutes ()) + ':' + this.leadingZero (today.getSeconds ());
},
/ **
* Принимает строку даты в австралийском формате и возвращает строку даты в американском формате
* @param {String} dateStr Дата в формате дд / мм / гггг
* @param {String} [separator = »-«] символ разделителя в строке даты возврата
* @returns {String} дата в формате мм / дд / гггг
* /
convertUSFormat: функция (dateStr, разделитель)
{
var separator = (typeof (separator) == 'undefined')? '-' : разделитель;
var re = new RegExp ('([0-9] {2}) / ([0-9] {2}) / ([0-9] {4})', 'm');
var соответствия = re.exec (dateStr);
возврат совпадений [2] + разделитель + совпадения [1] + разделитель + совпадения [3];
},
/ **
* Конвертировать дату в формате мм / дд / гггг и вернуть в формате дд-мм-гггг (в зависимости от разделителя)
* @param {String} dateStr Дата в формате мм / дд / гггг
* @param {String} [separator = »-«] Символ разделителя в строке даты возврата
* @returns {String} Дата в формате мм-дд-гггг (при условии, что «-» - это символ разделителя)
* /
convertUStoAUSDate: function (dateStr, разделитель)
{
var separator = (typeof (separator) == 'undefined')? '-' : разделитель;
var re = new RegExp ('([0-9] {2}) / ([0-9] {2}) / ([0-9] {4})', 'm');
var соответствия = re.exec (dateStr);
возврат совпадений [2] + разделитель + совпадения [1] + разделитель + совпадения [3];
},
/ **
* Возврат, составляют ли предоставленные компоненты даты ожидаемую дату
* @param {String} год
* @param {String} месяц
* @param {String} день
* @returns {Boolean} True, если компоненты даты соответствуют значениям даты в объекте Date
* /
isValidDate: функция (год, месяц, день)
{
var dt = новая дата (parseInt (год, 10), parseInt (месяц, 10) -1, parseInt (день, 10));
if (dt.getDate ()! = parseInt (day, 10) || dt.getMonth ()! = (parseInt (month, 10) -1) || dt.getFullYear ()! = parseInt (year, 10))
{
вернуть ложь;
}
вернуть истину;
},
/ **
* Принимает объект даты и возвращает в формате ггггммдд
* @param {Date Object} dateObj
* @returns {String} Дата в формате ггггммдд
* /
dateToYYYYMMDD: функция (dateObj)
{
return (dateObj.getFullYear () + this.leadingZero (dateObj.getMonth () + 1) + this.leadingZero (dateObj.getDate ())). toString ();
},
/ **
* Принимает объект даты и возвращает в формате ddmmyyyy
* @param {Date Object} dateObj
* @returns {String} Дата в формате ddmmyyyy
* /
dateToDDMMYYYY: функция (dateObj)
{
return (this.leadingZero (dateObj.getDate ()) + this.leadingZero (dateObj.getMonth () + 1) + dateObj.getFullYear ()). toString ();
},
/ **
* Принимает строку даты в формате дд / мм / гггг
* @param {String} dateString Дата в формате дд / мм / гггг
* @returns {Date Object} Возвращает false, если строка с данными недействительна
* /
stringToDate: function (dateString)
{
пытаться
{
var соответствия = dateString.match (/ ([0-9] {2}) / ([0-9] {2}) / ([0-9] {4}) /);
if (this.isValidDate (соответствует [3], соответствует [2], соответствует [1]) === false)
{
вернуть ложь;
}
вернуть новую дату (соответствует [3], parseInt (соответствует [2], 10) -1, parseInt (соответствует [1], 10));
}
поймать (е)
{
вернуть ложь;
}
},
/ **
* Добавляет начальный ноль, если переданное значение состоит из одной цифры
* @param {String} val
* @returns {String}
* /
leadZero: функция (val)
{
var str = val.toString ();
if (str.length == 1)
{
str = '0' + str;
}
обратная ул;
},
/ **
* Проверяет, совпадает ли дата возвращения или после даты отъезда
* @param {String} выписка
* @param {String} returnDate
* @returns {Boolean}
* /
isDepartureReturnDateValid: функция (выезд, дата возврата)
{
var dep = this.stringToDate (flightDate);
var ret = this.stringToDate (returnDate);
if (dep> ret)
{
вернуть ложь;
}
вернуть истину;
},
/ **
* Определить, является ли поставленный год високосным
* @param {Integer} год
* @returns {Boolean}
* /
isLeapYear: функция (год)
{
год = parseInt (год, 10);
если (год% 4 == 0)
{
если (год% 100! = 0)
{
вернуть истину;
}
еще
{
если (год% 400 == 0)
{
вернуть истину;
}
еще
{
вернуть ложь;
}
}
}
вернуть ложь;
},
compareDates: функция (от, до)
{
var dateResult = to.getTime () - from.getTime ();
var dateObj = {};
dateObj.weeks = Math.round (dateResult / (1000 * 60 * 60 * 24 * 7));
dateObj.days = Math.ceil (dateResult / (1000 * 60 * 60 * 24));
dateObj.hours = Math.ceil (dateResult / (1000 * 60 * 60));
dateObj.minutes = Math.ceil (dateResult / (1000 * 60));
dateObj.seconds = Math.ceil (dateResult / (1000));
dateObj.milliseconds = dateResult;
вернуть dateObj;
},
compareDatesDDMMYYYY: функция (от, до)
{
from = from.split ('/');
с = новая дата (с [2], с [1], с [0]);
to = to.split ('/');
до = новая дата (до [2], до [1], до [0]);
вернуть this.compareDates (от, до);
},
/ **
* Разрешить хорошее форматирование даты, как PHP функция даты
* Получено из кода, написанного Джеком Райтом по адресу http://jacwright.com/projects/javascript/date_format
* @param {Date} дата JavaScript объект даты
* @param {String} формат Строка формата даты
* @returns {String}
* /
формат: функция ()
{
переменная дата,
формат,
args = [] .slice.call (аргументы),
returnStr = ”,
curChar = ”,
месяцы = ['январь', 'февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь' ],
дни = ['воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота'],
методы =
{
// День
d: function () {return (date.getDate ()