Здравствуйте.
Думал, что выше более или менее понятно описано. Что Вам конкретно не понятно?!
function GetTime() {
var offset = arguments[0] || 0;
var d = new Date();
var localTime = d.getTime();
var localOffset = d.getTimezoneOffset() * 60000;
var utc = localTime + localOffset;
return new Date(utc + (3600000 * offset));
}
// GetTime(-5) -> вернет экземпляр объекта Date
// для UTC -5
// Detroit, Havana, Jamaica, Panama, Toronto