我目前的日期时间格式如下:
2012-10-11T00:00:00Z
看起来像datejs对尾随'z'不满意。
在请求中,我只是使用
"\/Date(" + new Date(2012-10-11T00:00:00).getTime() + ")\/";
将其作为json必需格式,但当它从响应(c#backend)返回时,会自动添加“z”。有没有办法摆脱它或使datejs能够解析这种格式?
答案 0 :(得分:2)
答案 1 :(得分:0)
如果您知道您的日期时间字符串始终采用该格式,并且始终为UTC,则可以使用Date.UTC将其轻松转换为日期对象,并保存加载库以获得相当简单的功能: / p>
function isoStringToDate(s) {
var d = s.match(/\d+/g);
return new Date(Date.UTC(d[0],--d[1],d[2],d[3],d[4],d[5],d[6]||0));
}
不关心Z是否存在。顺便提一下,在javascript中,ISO8601的日期时间字符串没有时区should be treated as UTC。
获取时间值:
isoStringToDate('2012-10-11T00:00:00').getTime()
或者如果你想保存一些字符(有混淆的风险):
isoStringToDate('2012-10-11T00:00:00')*1
但我更喜欢第一个。