var date, number; /** * Allow date and time to be displayed in the specified format * @param date * @param formatString format string * @returns {*} returns the resulting datetime string * * @example * var d = new Date (); *//Output d in YYYY-MM-DD hh:mm:ss format time String * J.format.date (D, "Yyyy-mm-dd hh:mm:ss"); */date = function (date, formatString) {/* * eg:formatstring= "yyyy-mm-dd hh:mm:ss"; */var o = {"m+": Date.getmonth () + 1,//month "d+": Date.getdate (),//day "H +": date.gethours (),//hour "m+": Date.getminutes (),//minute "s+": Date.getseconds (),// Second "q+": Math.floor ((Date.getmonth () + 3)/3),//quarter "S": Date.getmilliseconds ()//mi Llisecond}; if (/(y+)/.test (formatString)) {formatString = Formatstring.replace (regexp.$1, (date.getfullyear () + ""). Subst R (4-regexp.$1.length)); } for (var k in O) { if (New RegExp ("(" + K + ")"). Test (formatString)) {formatString = Formatstring.replace (regexp.$1, Re Gexp.$1.length = = 1? O[k]: ("XX" + o[k]). substr (("" + o[k]). length); }} return formatString; }; /** * @memberOf Format * @method number * Formatted digital display * @param num number to format * @param pattern format * @ex Ample * J.format.number (12345.999, ' #,# #0.00 '); *//out:12,34,5.99 * J.format.number (12345.999, ' 0 '); *//out:12345 * J.format.number (1234.888, ' #.0 '); *//out:1234.8 * J.format.number (1234.888, ' 000000.000000 '); *//out:001234.888000 */number = function (num, pattern) {var strarr = num? num.tostring (). Split ('. '): [' 0 ']; var Fmtarr = pattern? Pattern.split ('. '): [']; var retstr = '; Integral part var str = strarr[0]; var FMT = fmtarr[0]; var i = str.length-1; var comma = false; for (var f = fmt.length-1; F >= 0; f--) {switch (FMT.SUBSTR (f, 1)) {case ': if (I >= 0) Retstr = Str.substr (i--, 1) + retstr; Break Case ' 0 ': if (i >= 0) retstr = str.substr (i--, 1) + retstr; else Retstr = ' 0 ' + retstr; Break Case ', ': comma = true; Retstr = ', ' + retstr; Break }} if (I >= 0) {if (comma) {var L = str.length; for (; I >= 0; i--) {retstr = Str.substr (i, 1) + retstr; if (i > 0 && ((l-i)% 3) = = 0) retstr = ', ' + retstr; }} else Retstr = str.substr (0, i + 1) + retstr; } retstr = Retstr + '. '; Working with decimal parts str = strarr.length > 1? STRARR[1]: "; FMT = fmtarr.length > 1? FMTARR[1]: "; i = 0; for (var f = 0; f < fmt.length; f++) {switch (FMT.SUBSTR (f, 1)} {case ': if (i < str.length) Retstr + = Str.substr (i++, 1); Break Case ' 0 ': if (i < str.length) Retstr + = Str.substr (i++, 1); else retstr + = ' 0 '; Break }} return Retstr.replace (/^,+/, "). Replace (/\.$/,"); };
"JavaScript" date and number formatting