js Date的小问题

解析时间戳
new Date(682786800000)
Wed Aug 21 1991 23:00:00 GMT+0800 (中国标准时间)

new Date(682786800000).toLocaleDateString()
1991/8/22
两个时间差了一天
是不是和时间戳有关系?toLocaleDateString做了近似操作吗?
求解?谢谢(⊙o⊙)

阅读 1.8k
2 个回答

应该是因为时区的关系。

toLocaleString()方法会按照与浏览器设置的地区相适应的格式返回日期和时间。
改成美帝时间后:

图片描述

你都已经写出来了GMT转换为北京时间是+8个小时
toLocaleDateString是获取电脑时区,电脑上的时区一般都是北京时间
GMT是中央时区,北京在东8区,相差8个小时
23点+8小时肯定都到第二天了

图片描述

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