Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript中使用setInterval时日期不更改_Javascript - Fatal编程技术网

在javascript中使用setInterval时日期不更改

在javascript中使用setInterval时日期不更改,javascript,Javascript,在javascript中使用setInterval时,日期不会更改。 为什么日期不是每秒钟改变一次 var myVar=setInterval(myTimer(),1000); function myTimer() { var d = new Date(); document.write(d.toLocaleString()); } 您不应调用setInterval中的myTimer函数。您应该将引用传递到setInteval var myVar=setInterval(myTimer

在javascript中使用
setInterval
时,日期不会更改。 为什么日期不是每秒钟改变一次

var myVar=setInterval(myTimer(),1000);
function myTimer() {
  var d = new Date();
  document.write(d.toLocaleString());
}

您不应调用
setInterval
中的
myTimer
函数。您应该将引用传递到
setInteval

var myVar=setInterval(myTimer,1000);//corrected line
function myTimer() {
  var d = new Date();
  document.write(d.toLocaleString());
}

我认为这个解决方案更好,请检查这个例子

试试这个:

<html>
<body>

<p id="hh"></p>

<script>
  var myVar=setInterval(myTimer(),1000);
  function myTimer() {
    var d = new Date();
    document.getElementById("hh").innerHTML = d.toLocaleTimeString();
    //document.getElementById("hh").innerHTML = d.toLocaleTimeString();
  }
</script>

</body>
</html>

var myVar=setInterval(myTimer(),1000); 函数myTimer(){ var d=新日期(); document.getElementById(“hh”).innerHTML=d.toLocaleTimeString(); //document.getElementById(“hh”).innerHTML=d.toLocaleTimeString(); }
是否需要启动计时器?myTimer调用了1次,但没有再次调用为什么?相同的结果是,它没有再次调用,并且时间不变。我认为这是不必要的
var myVar=setInterval(function(){myTimer()},1000),请参阅此代码
<html>
<body>

<p id="hh"></p>

<script>
  var myVar=setInterval(myTimer(),1000);
  function myTimer() {
    var d = new Date();
    document.getElementById("hh").innerHTML = d.toLocaleTimeString();
    //document.getElementById("hh").innerHTML = d.toLocaleTimeString();
  }
</script>

</body>
</html>