4
您必須瞭解.NET方法「DateTime.FromOADate(double d)」。 我需要在JavaScript中實現相同的功能。即給予一個像「40967.6424503935」這樣的雙倍值,它必須轉換爲「2/28/2012 3:25:07 PM」 有人可以幫我嗎?如何將OLE自動化日期轉換爲使用JavaScript的可讀格式?
在此先感謝!
您必須瞭解.NET方法「DateTime.FromOADate(double d)」。 我需要在JavaScript中實現相同的功能。即給予一個像「40967.6424503935」這樣的雙倍值,它必須轉換爲「2/28/2012 3:25:07 PM」 有人可以幫我嗎?如何將OLE自動化日期轉換爲使用JavaScript的可讀格式?
在此先感謝!
自動日期是自1900年1月1日以來的天數(1900年奇怪地被視爲閏年)。所以轉換是:
var oaDate = 40967.6424503935;
var date = new Date();
date.setTime((oaDate - 25569) * 24 * 3600 * 1000);
alert(date);
該解決方案創建一個UTC日期。當你顯示它時,它會顯示在你當地的時區。取決於您的日期是本地日期還是UTC日期,這是正確的,或者需要一些額外的時區小提琴。
謝謝你的迴應。除了小時和分鐘之外,一切都很好。 (即使秒數是正確的!)我得到了:2012年2月28日20:55:07 GMT + 0530(印度標準時間)。將嘗試按照建議調整它。 –
這已經做到了:utc = date.getTime()+(date.getTimezoneOffset()* 60000); nd =新日期(utc);警報(nd.toLocaleString()); –
幹得好。這是時區偏移的缺失部分。 – Codo