扫码关注官方订阅号
平时会用new Date来获取当前时间,为了测试有时候会把系统时间手动改掉,这时候发现手动修改时间之后,date对象并不是总是跟着系统时间变,在浏览器不重新打开的情况下,会出现一直为今天的情况
业精于勤,荒于嬉;行成于思,毁于随。
new Date()是会变的,除非你事先把new Date()的值存进了变量,不然就是浏览器bug了。
这个问题。。。我以前也纠结过挺久的。怎么说呢,你修改好时间并能读取到你修改的时间,前提就是,你触发的这个事件需要有“重新读取”时间的这个动作。我试着简单说说看。
比如window.onload=function(){var oDate=new Date();
document.onclick=function() { alert(oDate) }
}
比如这个例子,你打开窗口,在这个时间点你读取了系统时间。然后你点击文档,alert出来了时间的量,但是这个时间的量是你打开窗口那个时候所获取的时间。so,你要把var oDate放到onclick这个事件里去,每次点击文档,都会抽取一次系统时间这样问题就解决啦。
new Date的话,应该会取系统时间,但是会有延迟,改完windows时间后,过段时间new Date才会变。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
new Date()是会变的,除非你事先把new Date()的值存进了变量,不然就是浏览器bug了。
这个问题。。。我以前也纠结过挺久的。
怎么说呢,你修改好时间并能读取到你修改的时间,前提就是,你触发的这个事件需要有“重新读取”时间的这个动作。
我试着简单说说看。
比如
window.onload=function()
{
var oDate=new Date();
}
比如这个例子,你打开窗口,在这个时间点你读取了系统时间。
然后你点击文档,alert出来了时间的量,但是这个时间的量是你打开窗口那个时候所获取的时间。
so,你要把var oDate放到onclick这个事件里去,每次点击文档,都会抽取一次系统时间
这样问题就解决啦。
new Date的话,应该会取系统时间,但是会有延迟,改完windows时间后,过段时间new Date才会变。