js获取当前时间

使用new Date会有时间误差的问题吗?
业务场景:

前端获取后台的一个逾期时间,如果当前时间>逾期时间,前端就发送请求给后台,如果收到后台的“ok”信息就前端进行跳转页面,
后台的处理 --> 收到前端的请求,获取当前时间比较逾期时间,如果大于逾期时间就发送给前端“ok”,而现在后台的时间还是小于逾期时间,所以没有发送“ok”给前端,导致前端没有跳转页面。
所以我想问的是,new Date()这个东西是不是有时间误差,是怎么回事?(后台总是晚几秒,而我们比较的是同一个“逾期时间”)。~~~~
阅读 9.7k
4 个回答

new Date 时当前电脑时间。和服务器时间不一样

还有前后端接口获取和传送都会需要时间的,网络差,十几秒的误差都有可能

建议当前时间最好是后台服务器给你,前台的时间和后台有时差,而且如果我手动改电脑的时间是可以将当前时间改掉的,这样很容易产生bug

浏览器获取的是系统时间,而系统时间是用户可以自己修改的,所以也不一定和服务端时间一致。
正确的做法应该是在服务端处理,因为服务端时间,用户没法自行修改。

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