Date()更改系统时间

时间:2015-02-13 10:49:21

标签: javascript node.js google-chrome systemtime

如果我在google Chrome(版本40.0.2214.111 m)中运行以下代码,系统时钟会加速,系统时钟每10秒钟会快1-2秒。

我在运行Windows 7 64位的机器上进行了测试,其中Intel Atom D525 1.8GHz,2GB内存。已安装所有Windows更新和驱动程序。

setInterval(function(){
   var clientTime = new Date().getTime();
   console.log(clientTime)
},100);

在IE中运行相同的代码时,我对系统时间的变化没有任何问题。

其他人遇到同样的问题吗?

http://jsfiddle.net/k4shz7cr/

更新

我添加了一个小测试,通过使用jquery和php从Web服务器获取时间(必须是另一台机器)。您可以看到客户端时间相对于Web服务器时间而变化。

在webbserver上的serverTime.php之后。

<?php
    date_default_timezone_set('Europe/Stockholm');
    $date = microtime(true);
    print $date;
?>

以上(第一个)JS,改为:

setInterval(function(){

   $.ajax({
       url: 'serverTime.php',
       type: 'POST',
       success: function( serverTime ){
          var clientTime = new Date().getTime() / 1000;
          var diff = serverTime - clientTime;

          console.log(serverTime,clientTime,diff)
       }
   });

},100);

!网络服务器不能与客户端计算机相同,那么差异将不会显示。

由于服务器代码的执行时间,你将始终在servertime和客户端时间之间得到差异,但差异会有些不变。

更新2015-02-17

现在我已经通过安装节点并运行相同的代码进行了测试:

setInterval(function(){
   var clientTime = new Date().getTime();
   console.log(clientTime)
},100);

我没有改变 UNTIL 我打开谷歌浏览器,然后突然系统时间开始改变,不是与上面相同的速度,而是每分钟几秒钟。 (刚刚开始使用chrome,没有别的)

这是疯狂,

0 个答案:

没有答案