我正在使用下面的日期对象从用户那里获取当前时间:
var currentdate = new Date(); return (currentdate.getDate() + "/" + (currentdate.getMonth()+1) + "/" + currentdate.getFullYear() + " @ " + currentdate.getHours() + ":" + currentdate.getMinutes() + ":" + currentdate.getSeconds());
我的问题是
currentdate
是从哪里获得时间的?它是否从中央服务器获取时间?全球任何地方的任何用户都可以同时执行上述代码吗?
或者这是基于每个用户的,这意味着如果来自不同时区的两个用户同时执行代码,他们将根据其时区获得时间,因此代码返回不同的值?
我正在使用下面的日期对象从用户获取当前时间:var currentdate = new Date();返回(currentdate.getDate()+“ /” +(currentdate.getMonth()+ 1)+“ /” ...
首先是一个很好的问题。许多开发人员都使用日期,但从不担心日期的确切工作方式。是的,它是运行JavaScript引擎的机器,因此,它也取决于时区。参见:https://javascript.info/date
根据mdn,确切的日期/小时取决于您的计算机。更多细节:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getHours
这是基于Unix时间戳,如果请求客户端,将基于用户计算机的时间,如果请求服务器端,则将基于服务器时间戳。
Javascript在网络浏览器上运行,因此花费时间在用户的计算机上。因此,如果您的用户位于不同的时区,那么他们将看到不同的时间。