把 times=new Date()放到函数里面时间正常走,放函数外面时间静止什么原因?

来源:8-3 计时器setInterval()

小狗会飞

2016-08-12 15:09

var atime;

var times=new Date();

function clock(){

atime=times.getHours()+"时"+times.getMinutes()+"分"+times.getSeconds()+"秒";

document.getElementById('time').value=atime;

}

setInterval(clock,100);


写回答 关注

1回答

  • Lunix土豆
    2016-08-12 15:47:00

    因为代码从上往下执行,第一次执行times获取到系统时间后是一个固定值,然后接下来运行clock()函数,然后执行到setInterval()后又开始重复调用clock()函数,之前的“var times=new Date()”并没有被执行到,所以他还是那个之前被赋的时间。

    小狗会飞

    明白了,多谢

    2016-08-12 16:15:34

    共 1 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题