Javascript 哪些日期格式符合IETF RFC 2822时间戳?
我需要用JavaScript解析日期。格式是 [2位数日]/[2位数月]/[4位数年][2位数小时(24模式)]:[2位数分钟] 例如,Javascript 哪些日期格式符合IETF RFC 2822时间戳?,javascript,date,datetime,rfc,rfc2822,Javascript,Date,Datetime,Rfc,Rfc2822,我需要用JavaScript解析日期。格式是 [2位数日]/[2位数月]/[4位数年][2位数小时(24模式)]:[2位数分钟] 例如,16/02/2013 21:00 但是如果我选择了新的日期('16/02/2013 21:00')。toString(),它会给出“Wed Apr 02 2014 21:00:00 GMT+0200(Hora de verano Romans)” 我猜这是因为我的日期不符合IETF RFC 2822日期和时间规范。然后,我应该转换我的字符串,我想将它转换为最相似
16/02/2013 21:00
但是如果我选择了新的日期('16/02/2013 21:00')。toString(),它会给出“Wed Apr 02 2014 21:00:00 GMT+0200(Hora de verano Romans)”
我猜这是因为我的日期不符合IETF RFC 2822日期和时间规范。然后,我应该转换我的字符串,我想将它转换为最相似的兼容格式(因为它应该更容易转换)。但是很难理解,所以我不知道哪种格式最相似
是否有允许格式示例的列表?有几个有效日期格式示例:
document.writeln((new Date("2010")).toUTCString());
document.writeln((new Date("2010-06")).toUTCString());
document.writeln((new Date("2010-06-09")).toUTCString());
// Specifies Z, which indicates UTC time.
document.writeln((new Date("2010-06-09T15:20:00Z")).toUTCString());
// Specifies -07:00 offset, which is equivalent to Pacific Daylight time.
document.writeln((new Date("2010-06-09T15:20:00-07:00")).toGMTString());
// Specifies a non-ISO Long date.
document.writeln((new Date("June 9, 2010")).toUTCString());
// Specifies a non-ISO Long date.
document.writeln((new Date("2010 June 9")).toUTCString());
// Specifies a non-ISO Short date and time.
document.writeln((new Date("6/9/2010 3:20 pm")).toUTCString());
// Output:
// Fri, 1 Jan 2010 00:00:00 UTC
// Tue, 1 Jun 2010 00:00:00 UTC
// Wed, 9 Jun 2010 00:00:00 UTC
// Wed, 9 Jun 2010 15:20:00 UTC
// Wed, 9 Jun 2010 22:20:00 UTC
// Wed, 9 Jun 2010 07:00:00 UTC
// Wed, 9 Jun 2010 07:00:00 UTC
// Wed, 9 Jun 2010 22:20:00 UTC
戈查斯
还有一个矩阵
参考资料
任何其他格式的解析都取决于实现,并且存在差异,因此一般规则是“不要使用内置解析器”。RFC2822允许使用一位数的日值。需要注意的是,从ECMAScript 2017开始,ECMA-262支持两种格式进行解析,其他任何格式都取决于实现。这些格式是为Date.prototype.toString、toISOString(ISO 8601扩展版的一个轻微修改)指定的格式。实现还必须支持它们为toLocaleString生成的任何内容,但没有指定格式本身。也看到