Форматирование даты, предоставленная JavaScript, слишком проста. и даже поддерживает форматирование без сепараторов, таких как YyyyMmdd.
Принципы: используйте регулярное выражение, чтобы разделить элементы даты в шаблоне даты [например, Yyyyy, MM, DD] и сепараторов, а затем используйте фактическое значение, чтобы заменить элемент даты, чтобы сформировать строку даты.
Всего реализовано две функции, и паста можно запустить.
Метод расширения:
В примере только элемент миллисекундов в году, месяце и дня |.
Если вам нужно отобразить месяц или неделю как полный или простой, вы можете добавить соответствующую конфигурацию в CFG.
Как использовать:
var date = new Date ();
var str = formatdate (дата, «Yyyy Year Mmm Month DD Day ');
Стоимость STR 29 июля 2012 г.
Код кода копирования следующим образом:
/**
* Форматальное целое число
* @param номер: номер для форматирования целого числа
* @param fmt: строка целочисленного формата
*/
Функция Formatnumber (число, FMT) {
number = number + '';
if (fmt.length> number.length) {
Вернуть fmt.substring (number.length) + номер;
}
Возвратный номер;
}
/**
* Дата форматирования является представлением строки
* @param DateTime: дата форматирования объекта даты
* @param format: формат даты строки
*/
Функция Formatdate (datetime, format) {{
var cfg = {
MMM: ['One', 'Two', 'Three', 'Four', 'Five', 'Six', 'Seven', 'Eight', 'Nine', 'Ten', 'Eleven', 'десять два '],
MMMM: ['One', 'Two', 'Three', 'Four', 'Five', 'Six', 'Seven', 'Eight', 'Nine', 'ten', 'одиннадцать', 'десять два ']
},
Значения = {{
y: togh.getfyear (),
M: Dough.getmonth (),
D: datetime.getDate (),
H: Dates.gethours (),
M: Dough.getMinutes (),
S: Dough.getSeconds (),
S: Dough.getMilliseconds ()
};
/*Используйте регулярное выражение, чтобы разделить формат даты каждого элемента*/
varelems = format.match (/y+| m+| d+| h+| m+| s+| s+| [^ymdhmss]/g);
// заменить элемент даты на фактическое значение
for (var i = 0; i <elems.length; i ++) {
if (cfg [elems [i]]) {
elems [i] = cfg [elems [i]] [значения [elems [i] .charat (0)] ;;
} Else if (values [elems [i] .charat (0)]) {) {
Elems [i] = formatnumber (values [elems [i] .charat (0)], elems [i] .replace (/./ g, '0' '));
}
}
Вернуть elems.join ('');
}