Facebook 返回此日期
2010-12-16T14:39:30+0000
但是,我注意到它比我当地时间早了 5 个小时。它应该是:
2010-12-16T09:39:30+0000
如何在javascript中将其转换为当地时间?
编辑
看到一些回复后,我觉得我应该更清楚地定义我正在寻找的东西。我如何能够确定用户的本地时区来格式化日期?
Facebook 返回此日期
2010-12-16T14:39:30+0000
但是,我注意到它比我当地时间早了 5 个小时。它应该是:
2010-12-16T09:39:30+0000
如何在javascript中将其转换为当地时间?
编辑
看到一些回复后,我觉得我应该更清楚地定义我正在寻找的东西。我如何能够确定用户的本地时区来格式化日期?
这可能会帮助您:
取自Convert the local time to another time zone with this JavaScript
// function to calculate local time
// in a different city
// given the city's UTC offset
function calcTime(city, offset) {
// create Date object for current location
d = new Date();
// convert to msec
// add local time zone offset
// get UTC time in msec
utc = d.getTime() + (d.getTimezoneOffset() * 60000);
// create new Date object for different city
// using supplied offset
nd = new Date(utc + (3600000*offset));
// return time as a string
return "The local time in " + city + " is " + nd.toLocaleString();
}
// get Bombay time
alert(calcTime('Bombay', '+5.5'));
// get Singapore time
alert(calcTime('Singapore', '+8'));
// get London time
alert(calcTime('London', '+1'));
这是在 Javascript 中解析 ISO8601 日期的函数,它还可以正确处理时间偏移:http: //delete.me.uk/2005/03/iso8601.html
这是我在 Javascript 中的做法
function timeStuff(time) {
var date = new Date(time);
date.setHours(date.getHours() - (date1.getTimezoneOffset()/60)); //for the timezone diff
return date;
}