我們將一個JSON日期傳遞給Moment Timezone JS。 我們在moment.tz()調用中設置我們的時區,以指定我們希望爲每個人顯示時間的時區,而不管用戶本地時區是什麼。 我們的問題是我現在想將它轉換回默認的Javascript時間格式,但保留moment.tz()指定的時區。我嘗試在新的Date()中包裝moment.tz()並附加.toDate(),但它只是從用戶計算機輸出本地日期(我將我的機器時區設置爲除我自己以外的其他東西來測試此內容)。我想要它做的是給我具體的時區日期/時間,我指定的時間是我在Moment中指定的時間。瞬時Timezone JS,返回Javascript日期
我的輸出示例。
//1504897200000 = 1:00 pm on Friday September 8, 2017
var eventTimeDate = moment.tz(1504897200000, "America/Denver").format('h:mm A');
現在我要帶我的JSON日期,並將其轉換回這應該是默認的Javascript格式:
Fri Sep 08 2017 13:00:00 GMT-0600 (Mountain Daylight Time)
但是,如果我改變我的本地計算機上我的時區它顯示爲我的電腦的時區不設我Moment.js設置
所以,如果我把我的時區都柏林嘗試使用moment.tz矩的時間來轉換時區()方法
var eventTimeDateValue = moment.tz(1504897200000, "America/Denver").toDate();
它輸出:
Fri Sep 08 2017 20:00:00 GMT+0100 (GMT Daylight Time)
不匹配「美國/丹佛」設置我的那一刻JS。我會艾克它是:
Fri Sep 08 2017 13:00:00 GMT-0600 (Mountain Daylight Time)
如何將其轉換回長格式,但仍保持時刻JS設置時區的任何想法?
這裏是我的jsfiddle:
https://jsfiddle.net/549La2ct/
您只需要使用.t格式化的字符串oString()?像這裏一樣https://jsfiddle.net/4wby7f07/或者你需要解析JavaScript日期對象嗎? – DevDig