在 JavaScript 中解析沒有指定時區的日期字串時,瀏覽器會根據本地時區來解釋它。在處理不同時區的日期時,這可能會導致意外結果。為了解決這個問題,需要一個解決方案來避免時區解釋並產生與本地時間相對應的 Date 物件。
一種方法涉及利用 getTimezoneOffset() 方法。此方法傳回本地時區和 UTC 之間的差異(以分鐘為單位)。將 getTimezoneOffset() 傳回的值乘以 60000(每分鐘毫秒)加到日期的 getTime() 值中,即可修正時區偏移。以下是一個範例:
<code class="javascript">var date = new Date('2016-08-25T00:00:00'); var userTimezoneOffset = date.getTimezoneOffset() * 60000; var correctedDate = new Date(date.getTime() + userTimezoneOffset);</code>
這會產生一個與解析時的本地時間相對應的 Date 對象,而無需任何時區轉換。需要注意的是,getTimezoneOffset() 可以根據位置傳回負值和正值。
以上是如何在 JavaScript 中解析沒有時區轉換的日期字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!