Re: [問題] js如何取得其他時區的時間?

看板Ajax作者 (T@cO)時間5年前 (2019/03/22 21:17), 編輯推噓1(101)
留言2則, 2人參與, 5年前最新討論串2/2 (看更多)
※ 引述《aoksc (重出江湖)》之銘言: : 如果要用js取得某個時區的日期時間 : 那麼請問怎麼才是正確的作法 : 目前我找文章大致上是說先Date.now()取得timestamp : 但new Date(timestamp)的結果是本地時間 : 請問可直接加減小時來取得某個時區的時間嗎? : 例如法國是UTC+1 : 台灣是UTC+8 : 所以我取得的日期-7小時就會是法國當下的時間? : 又如果我不確定網頁會開在哪個時區中 : 就不能隨便用-7的方法求法國時間 : 那麼什麼辦法才是最佳的解法呢? 坦白說 這個說起來很簡單,真的要做還是要動點腦筋 我之前跟你的問題一模一樣 最後還是自己寫了一套方法解決,給你參考 //將時間轉為台灣時間 function getTaiwanDate() { const date = new Date(); const GMT_8 = date.getHours() + (8 + date.getTimezoneOffset() / 60); date.setHours(GMT_8); return date; } 不論你在世界上的哪一個角落,只要用這個方法 保證得到台灣的時間 //你要的UTC+1 function getUTC_1() { const date = new Date(); const GMT_1 = date.getHours() + (1 + date.getTimezoneOffset() / 60); date.setHours(GMT_1); return date; } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.238.11.21 ※ 文章網址: https://www.ptt.cc/bbs/Ajax/M.1553260660.A.EA3.html

03/24 13:09, 5年前 , 1F
我記得有個方法 只要輸入城市名稱就能得到時間
03/24 13:09, 1F

03/27 23:06, 5年前 , 2F
用moment最簡單, 先轉utc再+1即可
03/27 23:06, 2F
文章代碼(AID): #1SbE1qwZ (Ajax)
文章代碼(AID): #1SbE1qwZ (Ajax)