2016-09-22 40 views
0

有沒有辦法將UTC偏移量(即-25200或-0700)傳遞給moment.utc()構造函數的構建時間?有沒有辦法將UTC偏移量傳遞給Moment utc對象?

即:

const timeUtc = moment.utc('Sun, 25 Sep 2016 12:30:00', 'ddd, DD MMM YYYY HH:mm:ss'); 

const timeDifference = '-25200'; 

任何方法來電timeUtc時刻對象轉換爲時刻對象的時區與UTC的爲TimeDifference的偏移?

+0

請注意,我在輸入中更正了兩個錯誤。我認爲這些是複製/粘貼問題,但1)你有兩次2016,2)不使用'new'關鍵字。 –

回答

0

瞬間有一個utcOffset函數可用於設置偏移量。但是,它並不期望以秒爲單位輸入字符串。你必須分開才能得到分鐘數,這也會把它強制爲一個數字。

const timeWithOffset = moment(timeUtc).utcOffset(timeDifference/60); 

這也是創建一個克隆,因爲不會改變原始值。

如果你調用這個.format()你的榜樣的投入,你會得到"2016-09-25T05:30:00-07:00"

這正確地從UTC轉換爲提供偏移。如果您的意思是原始值已經在該偏移量中,則將true作爲第二個參數傳遞給utcOffset函數,您將得到"2016-09-25T12:30:00-07:00"

請注意,我假設您的輸入偏移表示UTC-7。如果它實際上是UTC + 7,那麼你也需要在那裏乘以-1。

相關問題