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

时间:2015-03-16 01:37:08

标签: javascript

在javascript中使用setInterval时,日期不会改变。 为什么日期不会每秒都改变?

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

enter image description here

3 个答案:

答案 0 :(得分:4)

您不应在myTimer中调用setInterval功能。您应该将引用传递给setInteval

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

答案 1 :(得分:1)

我认为此解决方案更好,请查看此示例Timer Example

//When the document is loaded
document.addEventListener("load", myTimer);
//subsequent calls
setInterval(myTimer, 1000);
function myTimer(){
  var d = new Date();
  document.getElementById("timer").innerHTML = d.toLocaleString();
}

答案 2 :(得分:1)

试试这个:

<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>