我正在使用momentjs,但有一個問題試圖將UTC時間轉換爲由名稱'America/New_York'
指定的特定時區(不一定是當地用戶)。 This SO question是相似的,但沒有真正的幫助。MomentJS從UTC轉換爲所需的時區,而不僅僅是本地
我的思考過程是用服務器收到的日期創建utc moment obj,然後將UTC時間格式化爲特定時區以供顯示。的如何我目前正在處理這個小片段:
var cutoffString = '20170421 16:30:00'; // in utc
var utcCutoff = moment.tz(cutoffString, 'YYYYMMDD HH:mm:ss', '+00:00');
var displayCutoff =
moment.tz(utcCutoff.format('YYYYMMDD HH:mm:ss'), 'YYYYMMDD HH:mm:ss', 'America/New_York');
console.log('utcCutoff:', utcCutoff.format('YYYYMMDD hh:mm:ssa Z')); // => utcCutoff: 20170421 04:30:00pm +00:00
console.log('displayCutoff:', displayCutoff.format('YYYYMMDD hh:mm:ssa Z')); // => displayCutoff: 20170421 04:30:00pm +00:00
我在這裏的假設是,displayCutoff將是「美國/紐約」時間顯示utcCutoff時間。但它目前顯示的時間與utcCutoff對象相同。我還應該提到,使用.utc()
而不是.tz
並試圖在應用.local()
後也無法操作時區。
任何幫助/指導,將不勝感激。
[這裏](HTTP://計算器.com/q/43113350/4131048)舉例說明如何轉換時區之間的時刻,以幫助您。 – VincenzoC