gpt4 book ai didi

javascript - 用户当前时间

转载 作者:行者123 更新时间:2023-11-29 07:31:05 26 4
gpt4 key购买 nike

我有一个存储用户采取的操作的脚本。有一个列包含日期时间,最初我使用 NOW(),但它使用服务器时间,与用户的实际时间相比有几个小时的时间。

所以我决定利用 JS 所能获得的时间。我这样格式化它:

var now   = new Date(),                
isnow = now.getFullYear() + '-' + ('0' + (now.getMonth() + 1)).slice(-2) + '-' + ('0' + now.getDate()).slice(-2) + ' ' + ('0' + (now.getHours() + 1)).slice(-2) + ':' + ('0' + now.getMinutes()).slice(-2) + ':' + ('0' + now.getSeconds()).slice(-2);

我已经测试过,虽然格式工作正常,但时间晚了一个小时。是因为夏令时吗?如何获取用户的实际本地时间?

最佳答案

在您的代码中写道:

...('0' + (now.getHours() + 1)).slice(-2)...

尝试删除此加一

此外,您还可以通过以下方式检查是否使用夏令时:

if (now.dst()) { alert ("Daylight savings time!"); }

Date.prototype.stdTimezoneOffset = function() {
var jan = new Date(this.getFullYear(), 0, 1);
var jul = new Date(this.getFullYear(), 6, 1);
return Math.max(jan.getTimezoneOffset(), jul.getTimezoneOffset());
}

Date.prototype.dst = function() {
return this.getTimezoneOffset() < this.stdTimezoneOffset();
}

基于answer similar issue

关于javascript - 用户当前时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32639810/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com