昨天在一论坛里看到有朋友问 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() );
好了,今天就分享这么个小知识点吧。
原文:http://www.cnblogs.com/52cik/p/js-gmt-timestamp.html