我知道在javascript中使用Date
参数构建dateString
对象时,字符串必须是parse()
可以识别的内容。
parse
可以识别哪种日期格式?
例如:
var postDate = new Date("2011-03-08T23:52:38");
适用于Chrome和Internet Explorer,但在iPhone上失败(1970年1月1日返回)。
我找不到关于.parse()
方法或构造函数的任何关于参数应该是什么的正式文档。
格式yyyy-mm-ddThh:nn:ss
不起作用。什么是允许的格式字符串?
答案 0 :(得分:11)
MDC documentation of Date.parse()
个州(引用):
接受 IETF标准 (RFC 1123第5.2.14节及其他地方) 日期语法:
"Mon, 25 Dec 1995 13:30:00 GMT"
。
OP编辑:
用于创建此日期时间字符串的.NET语法:
/*
* r (RFC1123Pattern)
* ddd, dd MMM yyyy HH':'mm':'ss 'GMT'
* Mon, 15 Jun 2009 20:45:30 GMT
*/
dateTime.ToUniversalTime().ToString("r", CultureInfo.InvariantCulture); //"r" = RFC1123Pattern
编辑
r
(RFC1123模式)始终附加“GMT”,即使时间不是GMT(它是本地的)。您需要先致电.ToUniversalTime()
,以便实际成为GMT。
答案 1 :(得分:0)
使用Date的toJSON方法生成的格式将起作用。这与toIOSString方法相同。
日期格式为YYYY-MM-DDTHH:mm:ss.sssZ
注意:时区始终为UTC,后缀为“Z”。
var d = new Date();
console.log(d.toJSON());
console.log(d.toJSON() === d.toISOString());
console.log(Date.parse(d.toJSON()) === Date.parse(d.toISOString()));
您可能会发现显示的日期与您的时钟不同;记住时区是UTC。
参考文献: