mirror of
https://github.com/samsonjs/strftime.git
synced 2026-04-27 14:57:37 +00:00
Fixed the reference on padding
This commit is contained in:
parent
a2c640098f
commit
caf5c77eb9
1 changed files with 27 additions and 28 deletions
55
strftime.js
55
strftime.js
|
|
@ -51,7 +51,6 @@
|
||||||
var _locale;
|
var _locale;
|
||||||
var _date;
|
var _date;
|
||||||
var _timeZone;
|
var _timeZone;
|
||||||
var _padding;
|
|
||||||
|
|
||||||
// d, locale, and options are optional, but you can't leave
|
// d, locale, and options are optional, but you can't leave
|
||||||
// holes in the argument list. If you pass options you have to pass
|
// holes in the argument list. If you pass options you have to pass
|
||||||
|
|
@ -112,14 +111,14 @@
|
||||||
'b': function () {
|
'b': function () {
|
||||||
return _locale.shortMonths[_date.getMonth()];
|
return _locale.shortMonths[_date.getMonth()];
|
||||||
},
|
},
|
||||||
'C': function () {
|
'C': function (padding) {
|
||||||
return pad(Math.floor(_date.getFullYear() / 100), _padding);
|
return pad(Math.floor(_date.getFullYear() / 100), padding);
|
||||||
},
|
},
|
||||||
'D': function () {
|
'D': function () {
|
||||||
return _strftime(_locale.formats.D || '%m/%d/%y', _date, _locale);
|
return _strftime(_locale.formats.D || '%m/%d/%y', _date, _locale);
|
||||||
},
|
},
|
||||||
'd': function () {
|
'd': function (padding) {
|
||||||
return pad(_date.getDate(), _padding);
|
return pad(_date.getDate(), padding);
|
||||||
},
|
},
|
||||||
'e': function () {
|
'e': function () {
|
||||||
return _date.getDate();
|
return _date.getDate();
|
||||||
|
|
@ -127,34 +126,34 @@
|
||||||
'F': function () {
|
'F': function () {
|
||||||
return _strftime(_locale.formats.F || '%Y-%m-%d', _date, _locale);
|
return _strftime(_locale.formats.F || '%Y-%m-%d', _date, _locale);
|
||||||
},
|
},
|
||||||
'H': function () {
|
'H': function (padding) {
|
||||||
return pad(_date.getHours(), _padding);
|
return pad(_date.getHours(), padding);
|
||||||
},
|
},
|
||||||
'h': function () {
|
'h': function () {
|
||||||
return _locale.shortMonths[_date.getMonth()];
|
return _locale.shortMonths[_date.getMonth()];
|
||||||
},
|
},
|
||||||
'I': function () {
|
'I': function (padding) {
|
||||||
return pad(hours12(_date), _padding);
|
return pad(hours12(_date), padding);
|
||||||
},
|
},
|
||||||
'j': function () {
|
'j': function () {
|
||||||
var y = new Date(_date.getFullYear(), 0, 1);
|
var y = new Date(_date.getFullYear(), 0, 1);
|
||||||
var day = Math.ceil((_date.getTime() - y.getTime()) / (1000 * 60 * 60 * 24));
|
var day = Math.ceil((_date.getTime() - y.getTime()) / (1000 * 60 * 60 * 24));
|
||||||
return pad(day, null, 3);
|
return pad(day, null, 3);
|
||||||
},
|
},
|
||||||
'k': function () {
|
'k': function (padding) {
|
||||||
return pad(_date.getHours(), _padding == null ? ' ' : _padding);
|
return pad(_date.getHours(), padding == null ? ' ' : padding);
|
||||||
},
|
},
|
||||||
'L': function () {
|
'L': function () {
|
||||||
return pad(Math.floor(_date.getTime() % 1000), null, 3);
|
return pad(Math.floor(_date.getTime() % 1000), null, 3);
|
||||||
},
|
},
|
||||||
'l': function () {
|
'l': function (padding) {
|
||||||
return pad(hours12(_date), _padding == null ? ' ' : _padding);
|
return pad(hours12(_date), padding == null ? ' ' : padding);
|
||||||
},
|
},
|
||||||
'M': function () {
|
'M': function (padding) {
|
||||||
return pad(_date.getMinutes(), _padding);
|
return pad(_date.getMinutes(), padding);
|
||||||
},
|
},
|
||||||
'm': function () {
|
'm': function (padding) {
|
||||||
return pad(_date.getMonth() + 1, _padding);
|
return pad(_date.getMonth() + 1, padding);
|
||||||
},
|
},
|
||||||
'n': function () {
|
'n': function () {
|
||||||
return '\n';
|
return '\n';
|
||||||
|
|
@ -175,8 +174,8 @@
|
||||||
'r': function () {
|
'r': function () {
|
||||||
return _strftime(_locale.formats.r || '%I:%M:%S %p', _date, _locale);
|
return _strftime(_locale.formats.r || '%I:%M:%S %p', _date, _locale);
|
||||||
},
|
},
|
||||||
'S': function () {
|
'S': function (padding) {
|
||||||
return pad(_date.getSeconds(), _padding);
|
return pad(_date.getSeconds(), padding);
|
||||||
},
|
},
|
||||||
's': function () {
|
's': function () {
|
||||||
return Math.floor(_date.getTime() / 1000);
|
return Math.floor(_date.getTime() / 1000);
|
||||||
|
|
@ -187,8 +186,8 @@
|
||||||
't': function () {
|
't': function () {
|
||||||
return '\t';
|
return '\t';
|
||||||
},
|
},
|
||||||
'U': function () {
|
'U': function (padding) {
|
||||||
return pad(weekNumber(_date, 'sunday'), _padding);
|
return pad(weekNumber(_date, 'sunday'), padding);
|
||||||
},
|
},
|
||||||
'u': function () {
|
'u': function () {
|
||||||
var day = _date.getDay();
|
var day = _date.getDay();
|
||||||
|
|
@ -197,8 +196,8 @@
|
||||||
'v': function () {
|
'v': function () {
|
||||||
return _strftime(_locale.formats.v || '%e-%b-%Y', _date, _locale);
|
return _strftime(_locale.formats.v || '%e-%b-%Y', _date, _locale);
|
||||||
},
|
},
|
||||||
'W': function () {
|
'W': function (padding) {
|
||||||
return pad(weekNumber(_date, 'monday'), _padding);
|
return pad(weekNumber(_date, 'monday'), padding);
|
||||||
},
|
},
|
||||||
'w': function () {
|
'w': function () {
|
||||||
return _date.getDay();
|
return _date.getDay();
|
||||||
|
|
@ -228,7 +227,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
function processing(_, p, c) {
|
function processing(_, p, c) {
|
||||||
var _padding;
|
var padding;
|
||||||
|
|
||||||
// Most of the specifiers supported by C's strftime, and some from Ruby.
|
// Most of the specifiers supported by C's strftime, and some from Ruby.
|
||||||
// Some other syntax extensions from Ruby are supported: %-, %_, and %0
|
// Some other syntax extensions from Ruby are supported: %-, %_, and %0
|
||||||
|
|
@ -237,17 +236,17 @@
|
||||||
switch (p) {
|
switch (p) {
|
||||||
// omit padding
|
// omit padding
|
||||||
case '-':
|
case '-':
|
||||||
_padding = '';
|
padding = '';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// pad with space
|
// pad with space
|
||||||
case '_':
|
case '_':
|
||||||
_padding = ' ';
|
padding = ' ';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// pad with zero
|
// pad with zero
|
||||||
case '0':
|
case '0':
|
||||||
_padding = '0';
|
padding = '0';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// unrecognized, return the format
|
// unrecognized, return the format
|
||||||
|
|
@ -256,7 +255,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return mask[c]();
|
return mask[c](padding);
|
||||||
}
|
}
|
||||||
|
|
||||||
function quacksLikeDate(x) {
|
function quacksLikeDate(x) {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue