JavaJavaScript日期:这是真的吗?

JavaJavaScript日期:这是真的吗?,第1张

Java / JavaScript日期:这是真的吗?

在Dropbox的扩展经验教训的第1部分中,有一些很好的建议:

将所有内容都保留在UTC内部
!服务器时间,数据库中的内容等。这将节省很多麻烦,而不仅仅是夏时制。某些软件甚至无法正确处理非UTC时间,因此不要这样做!我们将墙上的时钟设置为UTC。如果要向用户显示时间,请在最后一秒进行时区转换。


将unix时间毫秒发送到服务器,您就知道用户选择了哪个时间点。然后使用UTC处理服务器上的所有内容,并将毫秒整数返回给客户端

客户端/ Javascript:

var date = new Date();var clientMilliseconds = date.getTime();// send clientMilliseconds to server

服务器/ Java:

Date date = new Date(clientMilliseconds);// store the date, then get it backlong serverMilliseconds = date.getTime();// send serverMilliseconds back to client

客户端/ Javascript:

var date = new Date(serverMilliseconds);// If receiving the error "Invalid Date", serverMilliseconds// needs to be converted to an Integer. Consider:// parseInt: parseInt(serverMilliseconds, 10)// unary +:  (+serverMilliseconds)

在此过程中,

date
服务器和客户端上的对象都将反映各自的时区,因此,如果您同时查看这两个时区,它们看起来可能会有所不同,但是如果您使用相同的时区将它们转换回UTC,则它们并非相同。


因此,回答您的问题:

如果我用这些毫秒创建一个Javascript Date对象,它将得到原始日期吗?

是。

Java的

Date(longdate)
构造函数和
getTime()
方法以Unix时间毫秒为单位进行 *** 作。Javascript
getTime()
Date
Constructor也是如此。除了协调世界时(GMT
/ UTC),不应涉及其他任何时区。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5439524.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-11
下一篇2022-12-11

发表评论

登录后才能评论

评论列表(0条)

    保存