作者taco2548 (T@cO)
看板Ajax
標題[問題] 請問new Date有辦法指定時區嗎?
時間Sun Dec 16 11:29:21 2018
小弟初新者
想請問new Date()的時候有辦法同時指定時區嗎?
因為我有一個必須確定是否為台灣時間星期日的timestamp
若是沒有指定GMT+8,最後得到的結果可能會是星期六或星期一
在使用java時我可以直接
simpleDateFormat.setTimeZone(TimeZone.getTimeZone("GMT+8:00"));
或
Calendar.getInstance(TimeZone.getTimeZone("GMT+8:00"));
但javascript似乎沒有這類的方法??
請各位大大指教一下
或是有什麼其他替代方案也可推薦,謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.75.145.159
※ 文章網址: https://www.ptt.cc/bbs/Ajax/M.1544930965.A.5C6.html
推 pkro12345: new Date(timestamp)就會回傳一個當地時區GMT+0800了 12/16 12:04
→ taco2548: 那如果不在GMT+8的時區怎麼辦 12/16 12:13
→ jherk: .setUTCHours() 12/16 12:22
→ pkro12345: timestamp是世界標準時間 所以是唯一的 12/16 12:30
→ pkro12345: 用new Data()本來就會回傳當地時間(GMT+0800)了,不用 12/16 12:33
→ pkro12345: 再設定GMT+0800 12/16 12:33
→ taco2548: 假設我人在英國,回傳的時間就變成GMT0了不是嗎? 12/16 12:34
→ taco2548: 可是我要的是GMT+8的時間 12/16 12:35
→ taco2548: 如果我先將timestamp歸到整點,GMT0的00:00:00 12/16 12:36
→ taco2548: 再減去8小時的timestamp 12/16 12:38
→ pkro12345: 你在英國使用new Date().getTime()會得到一個timestamp 12/16 12:39
→ taco2548: 這樣是不是就能保證為GMT+8的星期幾了? 12/16 12:39
→ pkro12345: 那個是GMT+0000,不管在哪使用都是回傳GTM+0000的 12/16 12:41
→ laechan: 先取得 timestamp 其它都好解決 12/16 16:19
推 neigence: moment用習慣了 都不想用Date 03/05 22:22