我有使用MomentJS的以下javascript行
var date = moment('20/04/20000', 'DD/MM/YYYY'); //notice year twenty thousand
alert(date.format()); // alerts "2000-04-20T00:00:00+01:00"
如果我将格式更改为DD/MM/YYYYY
,它会按预期工作,当然,如果我输入6位数年份。我知道这是武断的,但它让我感到困扰。如何使用预期一年中任何数字位数的格式?
答案 0 :(得分:1)
看起来似乎忽略了任何额外的格式规范。因此,您可以使用尽可能多的Y,就像您期望的最大日期所需要的那样。例如,此代码告诉我们期望10位数年:
moment('20/04/20000', 'DD/MM/YYYYYYYYYY').format();
但是它的返回值看起来像你期望的那样,5位数年份:
“20000-04-20T00:00:00-04:00”
这不是一个记录在案的功能,我会在使用未来时刻更新时对此代码非常小心。请务必使用单元测试保护此代码。