总结一下

昨天在做一个html显示当前系统时间的时候遇到个问题,问题代码如下

function jia(n){
            if(n<10){
                return "0"+n;
            }else
                return n;
        }
        var dd=document.getElementById("d1");

   var date = new Date();//错误操作,每次执行函数时没有初始化
        function sj(){

      var date = new Date();//对象初始化
                 dd.innerHTML=date.getFullYear()+"年"+jia((date.getMonth()+1))+"月"+jia(date.getDate())+"日 "
                +jia(date.getHours())+":"+jia(date.getMinutes())+":"+jia(date.getSeconds());
        }
        setInterval(sj, 1000);
        sj();

在执行这段代码的时候将date声明放在了函数外面,这样使得页面只有手动刷新才会显示实时时间,不能达到相应效果,只有把变量声明在函数里面,调用的时候才会把对象初始化,达到目的效果。

原文地址:https://www.cnblogs.com/pcyy/p/5274816.html