我使用timeago Jquery插件输出“5分钟前”之类的字符串等。
该插件使用ISO 8601日期格式。
我在控制台中有一个Date对象:
Sat Jun 15 2013 07:16:23 GMT+0530 (India Standard Time)
要将其转换为ISO 8601,请执行以下操作:
date = date.toISOString();
现在它在控制台中看起来像这样:
2013-06-15T01:46:23Z
显然,时区已设置为UTC(Z代表UTC)。 这与timeago插件混淆,因为现在所有内容都是UTC,而不是当地时区。
我试过了:
Date.prototype.toISOStringfix = function() {
function pad(n) { return n < 10 ? '0' + n : n }
return this.getUTCFullYear() + '-'
+ pad(this.getUTCMonth() + 1) + '-'
+ pad(this.getUTCDate()) + 'T'
+ pad(this.getUTCHours()) + ':'
+ pad(this.getUTCMinutes()) + ':'
+ pad(this.getUTCSeconds()) + 'Z';
};
但是,我得到了相同的结果。
为什么会这样?我该如何解决?