最近在國際化,須要計算不一樣時區的時間問題。 java
先介紹一下js如何計算時間國際化
主要根據時區的偏移量,而後在將時間戳作對應的移動。 prototype
// 太平洋時間的時區信息 var targetTimeZone = 8 * 60; // 目標的時區偏移量 Date.prototype.timezoneDate = function(targetTimeZone) { var localDate = new Date(); var localTimeZone = -480; // localDate.getTimezoneOffset() var targetDate = new Date(); targetDate.setTime(localDate.getTime() + (targetTimeZone - localTimeZone) * 60 * 1000); return targetDate; } console.log(new Date().timezoneDate(targetTimeZone).toGMTString());
在java程序中,存儲的時間戳是格林威治時間,即標準時間。當咱們須要轉換出顯示的時間的時候,咱們能夠利用DateFormat來進行調整。 code
DateFormat df = new SimpleDateFormat(); df.setTimeZone(TimeZone.getTimeZone("GMT-8")); String lbl = df.format(new Date()); System.out.println(lbl);