昨天在一論壇里看到有朋友問 js 如何獲取格林尼治時間戳。
不少朋友第一反應是 toGMTString 。。。
確實可以得到格林尼治時間,但不是時間戳。
雖然我也沒有啥好的方法一步到位的獲取,不過至少是獲取到了,與大家分享下吧,讓各位賤笑了。
getTimezoneOffset 可以取得當前時區的偏移量,單位是分鍾,
我們的時區是 GMT+0800,所以轉換回去應該 -8 才對。
換算成分鍾就是 -8 * 60 = -480
getTimezoneOffset 方法得到的正是 -480
var dt = new Date; console.log( dt.getTimezoneOffset() ); // -480
我們要得到相應的格林尼治時間戳,只需要加上 -480 分鍾即可。
var dt = new Date; dt.setMinutes( dt.getMinutes() + dt.getTimezoneOffset() ); // 當前時間(分鍾) + 時區偏移(分鍾) console.log( "格林尼治時間戳: ", dt.getTime() ); console.log( "用本地時間格式顯示: ", dt.toLocaleString() );
好了,今天就分享這么個小知識點吧。