Javascript 哪些日期格式符合IETF RFC 2822时间戳?

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日期和时间规范。然后,我应该转换我的字符串,我想将它转换为最相似

我需要用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日期和时间规范。然后,我应该转换我的字符串,我想将它转换为最相似的兼容格式(因为它应该更容易转换)。但是很难理解,所以我不知道哪种格式最相似

是否有允许格式示例的列表?

有几个有效日期格式示例:

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
戈查斯 还有一个矩阵

参考资料


这个问题似乎在问“ECMAScript实现需要解析哪些格式”

在ECMAScript Ed 5(2011)之前,解析完全依赖于实现。ECMAScript实现需要解析的格式可以概括为:

  • ECMAScript ed 5(2011)中引入了一个名为“”的ISO 8601扩展格式的单一版本(尽管略有修改)。它与ISO 8601的不同之处在于,仅日期表单被视为UTC,而非本地,并且时区偏移必须在小时和分钟之间有冒号
  • 由实现自己的方法生成的格式,已在ECMAScript 2018中标准化
  • 由实现自己的方法生成的格式,在ECMAScript 2018中也是标准化的

  • 任何其他格式的解析都取决于实现,并且存在差异,因此一般规则是“不要使用内置解析器”。

    RFC2822允许使用一位数的日值。需要注意的是,从ECMAScript 2017开始,ECMA-262支持两种格式进行解析,其他任何格式都取决于实现。这些格式是为Date.prototype.toString、toISOString(ISO 8601扩展版的一个轻微修改)指定的格式。实现还必须支持它们为toLocaleString生成的任何内容,但没有指定格式本身。也看到