JavaScript基础(七) ---- 日期、定时器

1. 日期

 1. new Date()     --- 创建日期,获取当前日期  返回:Wed Jul 12 2017 18:49:54 GMT+0800 (中国标准时间)
 2. var oDate = new Date();
    var m=oDate.getMonth()+1;    //获取月份的时候,必须+1;
    var d=oDate.getDate();       //获取日
    var w=oDate.getDay();        //获取星期 0123456   0:代表星期日;
    var h=oDate.getHours();      //获取小时
    var min=oDate.getMinutes();  //获取分钟
    var s=oDate.getSeconds();    //获取秒   

#

2. 定时器

 1. setInterval()   有两个参数:1)回调函数 2)毫秒数
                    每隔一段时间走一次;只要不关闭页面或关闭定时器,他会一直走下去;
                    手动关闭:clearInterval(定时器名)
 2. setTimeout()    有两个参数:1)回调函数 2)毫秒数
                    一段时间后只走一次;
                    手动关闭:clearTimeout(定时器名)
 var n=0;
 var timer=setInterval(function(){
        n++;
        alert(n)
        if(n==5){
            clearInterval(timer);   //关闭定时器,必须关闭有名字的定时器;
        }
    },1000)
例子
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
        body{
            font-size: 100px;
        }
    </style>
</head>
<body>
<script>
    //toDou:实现两位数
    function toDou(n){
        return n>=0 && n<10? '0'+n:''+n;
    }
    function getDate(){
        var oDate=new Date();        //获取日期对象
        var y=oDate.getFullYear();   //获取年份
        var m=oDate.getMonth()+1;    //获取月份的时候,必须+1;
        var d=oDate.getDate();       //获取日
        var w=oDate.getDay();        //获取星期 0123456   0:代表星期日;
        var h=oDate.getHours();      //获取小时
        var min=oDate.getMinutes();  //获取分钟
        var s=oDate.getSeconds();    //获取秒
        var str=toDou(h)+':'+toDou(min)+':'+toDou(s)     //字符串拼接
        document.body.innerHTML=str;
    }
    getDate();    //这里手动调用一次,是为了防止1秒后才执行,页面出现空白的情况
    var timer=setInterval(getDate,1000)  //每 隔一秒获取一次最新的日期对象;
</script>
</body>
</html>

3. 用setTimeout实现setInterval

var n=0;
    function fn(){
        n++;
        if(n===5){                    //当n===5的时候,结束定时器,同时,阻断程序执行;
            clearTimeout(timer);     //结束定时器
            return;                  //阻断程序执行;
        }
        var timer=setTimeout(fn,1000);//开启定时器;
    }
    fn();
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章