我试图将Twitter日期时间转换为本地的iso-string(for prettyDate)现在为2天。我只是没有得到本地时间正确使用下面的函数..javascript toISOString()忽略时区偏移量
IM:
function getLocalISOTime(twDate) {
var d = new Date(twDate);
var utcd = Date.UTC(d.getFullYear(), d.getMonth(), d.getDate(), d.getHours(),
d.getMinutes(), d.getSeconds(), d.getMilliseconds());
// obtain local UTC offset and convert to msec
localOffset = d.getTimezoneOffset() * 60000;
var newdate = new Date(utcd + localOffset);
return newdate.toISOString().replace(".000", "");
}
在newdate一切正常,但toISOString()再次抛出回原来的时间... 谁能帮我把本地时间从Twitterdate ISO格式为: 星期四,2012 5月31日8时33分41秒+0000
你描述结尾处的格式不是[ISO-8601E](http://dotat.at/tmp/ISO_8601-2004_E.pdf)格式(另请参见[Date.toISOString](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date/toISOString)。你可以很容易地实现你想要的格式;它非常接近你用'dateObj.toString()'得到的结果,试着玩那个。 – Zirak
谢谢!结束了这个:var d = new Date(twDate); return new Date(d.toISOString()。replace(“Z”,“-02:00”))。toISO String()。replace(“。000”,“”);不是最漂亮的解决方案,但适用于我的时区。 –
可能的重复[有什么办法来产生这个字符串日期表示(与时区),而不使用JavaScript的子字符串函数或正则表达式?](http://stackoverflow.com/questions/14992051/is-there-any-way -to-produce-this-string-date-representation-with-time-zone-wit) – Bergi