正确的Javascript Date.parse(…)格式字符串?
什么是构造字符串的区域性不变方法,以便Javascript Date()构造函数能够解析它并创建正确的日期对象 我尝试过这些不起作用的格式字符串(使用C#生成字符串): 通用格式是什么 给定表示时间的字符串,正确的Javascript Date.parse(…)格式字符串?,javascript,parsing,date,string-formatting,Javascript,Parsing,Date,String Formatting,什么是构造字符串的区域性不变方法,以便Javascript Date()构造函数能够解析它并创建正确的日期对象 我尝试过这些不起作用的格式字符串(使用C#生成字符串): 通用格式是什么 给定表示时间的字符串,parse返回时间值。它接受IETF标准(第5.2.14节和其他地方)日期语法:“Mon,Dec 1995 13:30:00 GMT”。它理解美国大陆的时区缩写,但对于一般用途,使用时区偏移,例如,“Mon,Dec 1995 13:30:00 GMT+0430”(格林威治子午线以东4小时30
parse
返回时间值。它接受IETF标准(第5.2.14节和其他地方)日期语法:“Mon,Dec 1995 13:30:00 GMT”
。它理解美国大陆的时区缩写,但对于一般用途,使用时区偏移,例如,“Mon,Dec 1995 13:30:00 GMT+0430”
(格林威治子午线以东4小时30分钟)。如果未指定时区,则假定为本地时区。GMT和UTC被认为是等效的
如果您不能使用英语语言环境生成此格式,请尝试使用如果您想要Javascript可以解析的独立于语言环境的格式,可以使用
2013-03-31T16:36:57+0900
。它至少在Node.js和Chrome中可以工作,所以我怀疑它是标准的。好问题,这是一个棘手的问题,为什么需要一个字符串?我需要向浏览器发送一个字符串,这样我就可以使用Javascript的toLocaleString()函数使用Javascript对字符串进行本地化。然而,我很难想出一个成功的单字符串格式,它将由我的所有服务器发出。RFC 1123救命!谢谢Maciej!不适用于Android 2.2(适用于2.3及更高版本)。在任何iOS设备上都不工作(测试版本为5.0和6.0)。那么2013-03-31T16:36:57Z
?在iOS上工作。不同的是现在的时间必须是格林尼治标准时间。要是这么简单就好了。。。这种格式(称为ISO-8601)在IE8中也不起作用。
clientDate.ToString();
// gives: "11/05/2009 17:35:23 +00:00"
clientDate.ToString("MMM' 'dd', 'yyyy' 'h':'mm':'ss' 'tt");
// works on an English server
// but on a French server, gives: "mai 11, 2009 5:35:23"
// Javascript won't parse that.
clientDate.ToString("MM'-'dd'-'yyyy' 'HH':'mm':'ss")
// gives: 05-11-2009 17:35:23