我有以下格式的日期:
2012-12-09T02:08:34.6225152Z
我正在使用datejs javascript 库并希望解析上述日期,但我似乎无法找出正确的格式字符串。我尝试了以下方法,但它不起作用。
Date.parse('2012-12-09T02:08:34.6225152Z', 'yyyy-MM-ddTHH:mm:ss.fffffffZ');
如果它更容易,我也愿意在本机 javascript 中解析字符串。
我有以下格式的日期:
2012-12-09T02:08:34.6225152Z
我正在使用datejs javascript 库并希望解析上述日期,但我似乎无法找出正确的格式字符串。我尝试了以下方法,但它不起作用。
Date.parse('2012-12-09T02:08:34.6225152Z', 'yyyy-MM-ddTHH:mm:ss.fffffffZ');
如果它更容易,我也愿意在本机 javascript 中解析字符串。
DateJS 似乎不支持毫秒解析。DateJS 附加组件上有u
FormatSpecifier 可以工作(尚未测试)。
我最终通过在发送到 Javascript 时更改字符串的格式来解决这个问题。我没有使用以下代码将JSON2012-12-09T02:08:34.6225152Z
序列化程序更改为输出:1363607010099
var serializer = new JsonNetSerializer(new JsonSerializerSettings
{
DateFormatHandling = DateFormatHandling.MicrosoftDateFormat,
NullValueHandling = NullValueHandling.Ignore
});
然后我更改了我的 javascript 以使用我找到的这个函数来解析日期:
String.prototype.toDate = function () {
"use strict";
var match = /\/Date\((\d{13})\)\//.exec(this);
return match === null ? null : new Date(parseInt(match[1], 10));
};
最后,我使用这段代码输出日期(利用 DateJS 库):
myTime.toDate().toString('h:mm:ss tt dd-MMM-yyyy')
它有效。这似乎有点骇人听闻,所以我非常愿意考虑替代方案。