在编写Web应用程序时,将所有日期时间作为UTC时间戳存储(服务器端)在数据库中是有意义的。
当我发现您无法在JavaScript中对时区进行操作方面自然无法做到时,我感到非常惊讶。
我稍微扩展了Date对象。这个功能有意义吗?基本上,每次我向服务器发送任何内容时,都会使用该功能格式化时间戳记。
您在这里看到任何重大问题吗?还是从另一个角度解决问题?
Date.prototype.getUTCTime = function(){
return new Date(
this.getUTCFullYear(),
this.getUTCMonth(),
this.getUTCDate(),
this.getUTCHours(),
this.getUTCMinutes(),
this.getUTCSeconds()
).getTime();
}
在我看来,这有点令人费解。而且我也不是很确定性能。
new Date().toString()
将显示您当前时区时间表示,new Date().toUTCString()
将向您展示UTC时间再版,却new Date().getTime()
是始终UTC,因为这是Unix的时间定义为:“Unix时间(也被称为POSIX时间或信号出现时间)是一种描述瞬间系统时间,即从1970年1月1日星期四00:00:00世界标准时间(UTC)起经过的秒数,不包括leap秒。”