好吧,說JSON解析字符串UTC如下日期:Javascript來UTC轉換爲本地時間
2012-11-29 17:00:34 UTC
現在,如果我想這個UTC日期轉換到我的本地時間,我該怎麼辦呢?
感謝您的回答
=====
那麼,如何才能把它格式化爲別的東西像 'YYYY-MM-DD HH:MM:SS Z'?
這date.toString('yyyy-MM-dd HH:mm:ss z');
行不通了:/
好吧,說JSON解析字符串UTC如下日期:Javascript來UTC轉換爲本地時間
2012-11-29 17:00:34 UTC
現在,如果我想這個UTC日期轉換到我的本地時間,我該怎麼辦呢?
感謝您的回答
=====
那麼,如何才能把它格式化爲別的東西像 'YYYY-MM-DD HH:MM:SS Z'?
這date.toString('yyyy-MM-dd HH:mm:ss z');
行不通了:/
這應該工作
var date = new Date('2012-11-29 17:00:34 UTC');
date.toString()
如何將本地日期格式設置爲'yyyy-MM-dd HH:mm:ss z'? – lannyboy
var offset = new Date().getTimezoneOffset();
offset
將在從本地時間到UTC分鐘的間隔。要從UTC日期獲得本地時間,您將從日期中減去分鐘數。
utc_date.setMinutes(utc_date.getMinutes() - offset);
我認爲這應該是減去偏移量,而不是添加偏移量。 – OnResolve
+是合適的,因爲如果時區在1小時之後,則返回的值將是-60。 –
@OnResolve Surabhi使用'+'是正確的。使用日期時。getTimezoneOffset',_「getTimezoneOffset()中的負數返回值表示當前位置在UTC之前,而正值表示位置在UTC之後。」_([** Tech Republic **](http:/ /www.techrepublic.com/article/convert-the-local-time-to-another-time-zone-with-this-javascript/))。 – WebWanderer
要格式化日期請嘗試以下功能:
var d = new Date();
var fromatted = d.toLocaleFormat("%d.%m.%Y %H:%M (%a)");
但這種方法的缺點是,它是一個非標準功能,在Chrome中工作,但在工作FF(afaik)。上述
克里斯
/*
* convert server time to local time
* simbu
*/
function convertTime(serverdate) {
var date = new Date(serverdate);
// convert to utc time
var toutc = date.toUTCString();
//convert to local time
var locdat = new Date(toutc + " UTC");
return locdat;
}
的解決方案是正確的,但在Firefox和Safari可能會崩潰!這就是webility.js試圖解決的問題。檢查toUTC
函數,它適用於大多數主要瀏覽器,它返回ISO格式的時間
'new Date(「2012-11-29 17:00:34 UTC」)'將在當地時間使用頁面的客戶端 – Esailija
您可以使用空格或符號將其拆分爲數組。假設你做了.split(「」)和帶有日期和時間的數組,並且將會形成「utc」。 然後像這樣再次分割它.split(「 - 」)並且像這樣分割時間.split(「:」)等等。 – yashas123