2016-06-19 151 views
0

在打字稿中如何將這樣的字符串轉換爲datetime?Typescript將sting轉換爲datetime

2019-01-19 14:00:12 

我不知道這是正確的方式

new Date("2019-01-19 14:00:12") 

我認爲會有某種方式在其指定的時區。

+0

請校對您的問題標題。 –

+0

日期沒有時區。時區是如何表示日期的一個方面。有關更多信息,請閱讀http://w3c.github.io/i18n-drafts/articles/definitions-time/index.en.html。 –

回答

0

如果您構建新的日期,它將使用客戶端的時區。在這裏查看更多信息如何構建日期:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date

您可以手動解析日期字符串,並用年,月,日,小時,分鐘,秒值構造新的Date對象。或者如果日期字符串的格式正確,則可以使用Date.Parse(...)函數,如下所示:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/parse

如果您想要UTC日期,則需要使用新的Date.UTC(...)構造它。 )

+0

*如果您構建新的日期,它將使用客戶端的時區。*實際上,這是不正確的。你可能的意思是,如果你把一個日期轉換爲一個字符串,ti將使用來自客戶端的時區來表示它。 –

+0

不,我的意思是它不會根據客戶時區來建造日期。從msdn:「構造函數根據系統設置爲當前日期和時間創建JavaScript Date對象」。日期實際表示的是1970年1月1日00:00:00 UTC以來的毫秒數。所以如果你的電腦上的時區是+2,它會以2 * 60 * 60 * 1000更多毫秒構建日期。 – MarkoR

+0

這也是你可以如何檢查客戶端上的本地時區,你構造新的日期,並獲得它從UTC時間的偏移量:new Date()。getTimezoneOffset()(更多在這裏:[link](https:// developer .mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Date/getTimezoneOffset)) – MarkoR