Safari下使用getDate()方法获取到的时间会比其他浏览器慢一天

目前只发现了时间戳为零点的情况
如:
647017200(1990年7月4日00:00:00)
在其他浏览器下正常

图片描述

safari下
图片描述

转换时间戳所用代码如下
timestampToDate: function(timestamp){
                time = new Date(timestamp * 1000)
                var year=time.getFullYear(); 
                var month=time.getMonth() + 1; 
                var date=time.getDate(); 
                return year + "年" + month + "月" + date + "日" ;
            }

搜索了一圈貌似只有我遇到了这个问题,是转换的代码哪里写错吗?
先谢谢大家

阅读 3.1k
3 个回答

是夏时令的问题,你在Chrome里输出一下time,他是这样提示的:

Wed Jul 04 1990 00:00:00 GMT+0900 (中国夏令时间)

但是在safari里输出的是这样的:

Tue Jul 03 1990 23:00:00 GMT+0800 (CST)
夏令时结束。从1986年到1991年的六个年度,除1986年因是实行夏时制的第一年,从5月4日开始到9月14日结束外,其它年份均按规定的时段施行。在夏令时开始和结束前几天,新闻媒体均刊登有关部门的通告。1992年起,夏令时暂停实行。

chrome 遵循了夏令时。 所以1986至1991的规定时间段,chrome 都是用夏令时显示时间的.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题