簡體   English   中英

Javascript:將包含日期和時間的字符串轉換為 UTC 時區中的字符串

[英]Javascript: convert a string containing date & time to a string in the UTC timezone

我有以下格式的字符串:

yyyy-mm-dd hh:mm

此字符串基於客戶端瀏覽器上的時區。 我需要將其轉換為顯示 UTC 時間的字符串。

我可以計算偏移量使用了多少小時:

new Date().getTimezoneOffset() / 60

如果時間沒有把它收回一天,這很好(例如,如果有 -2 小時的偏移適用於凌晨 1 點時間)。

實現這一目標的最佳方法是什么?

使用此代碼,您可以將客戶端的日期字符串轉換為相應的 UTC 時間。

 let now = new Date() // Thu Oct 28 2021 15:31:17 GMT+0200 // this Date in your given format would be >> let dateStr = '2021-10-28 15:31' let utcDate = new Date(dateStr).toUTCString() console.log(utcDate) // Thu, 28 Oct 2021 13:31:00 GMT << -02:00 to my local time above let isoDate = new Date(dateStr).toISOString() console.log(isoDate) // 2021-10-28T13:31:00.000Z << better format for storing dates

我建議使用luxon,因為你可以在它上面做各種事情。

Import {DateTime} from "luxon";
DateTime.locale().setZone("your zone").fromFormat("2021-10-10 22:00", "yyyy-MM-dd HH:mm").toUTC();

希望它能起作用,因為用我的手機寫的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM