js初识第六节

2019-08-19  本文已影响0人  An的杂货铺

setInterval 和setTimeout定时器差异

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>Document</title>

</head>

<body>

</body>

<script type="text/javascript">

function print(){

console.log('今天星期五')

}

function print1(){

console.log('明天星期六')

}

var timer1 = setInterval(print,2000);//每隔两秒调用这个函数一次

var timer2 = setTimeout(print1,2000);//打开页面后2秒后调用print1函数,仅调用一次

    //清除定时器使用

    setTimeout(function(){

    clearInterval(timer1);

    console.log('55555')

    },4000);

    //定时器的清除使用clearInterval()和setTimeout();

</script>

</html>


日期对象date

将日期转化为标准的日期,封装一个获取实时时间的函数

<!DOCTYPE html>

<html lang="en">

<head>

      <meta charset="UTF-8">

      <title>Document</title>

</head>

<body>

      <p></p>

</body>

<script type="text/javascript">



    gettime();//进入页面先执行一次

    //将日期转化为标准的日期,封装一个获取实时时间的函数

    function gettime(){

      console.log('123')

      var d = new Date();//得到此刻的时间

      var weekArr = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];

      var y = d.getFullYear();

      console.log(y);//得到哪年

      var m = d.getMonth()+1;

      console.log(m);//月份是0-11 0表示1月份 得到哪一个月需要加1

      var t = d.getDate();

      console.log(t);//得到哪一天

      var x = weekArr[d.getDay()];

      console.log(x)//得到星期几 得到0-6中的一天;0:周天,6:周六

      var hour = d.getHours();

      console.log(hour);//得到几点

      var min = d.getMinutes();

      console.log(min);//得到那一分

      var sec = d.getSeconds();

      console.log(sec);//得到哪一秒

      var trueTime = '现在时间'+y+'年'+m+'月'+t+'号'+x+hour+'点'+min+'分'+sec+'秒';

      document.querySelector('p').innerText = trueTime;

    }



    setInterval(gettime,1000);//每隔一秒钟调用一次,在p标签显示实时时间

</script>

</html>

一个倒计时的计算

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>Document</title>

</head>

<body>

<p>现在距离2020年1月1日还有<span></span></p>

</body>

<script type="text/javascript">

//计算从现在到2020年需要多少天多少小时多少分多少秒

//date.getTime()//得到的是从1970年1月1日到此刻之间的毫秒数

function time(a,b){

      // var day = parseInt((a.getTime()-b.getTime())/3600000/24);

      // var hour = parseInt((a.getTime()-b.getTime())/3600000%24);

      // var min = parseInt(((a.getTime()-b.getTime())/3600000%24 - hour)*60);

      // var sec = parseInt((((a.getTime()-b.getTime())/3600000%24 - hour)*60-min)*60);

      // var str = day+'天'+hour+'小时'+min+'分'+sec+'秒';

      // return str

      //将以上逻辑整理一下

      // var t = (a.getTime()-b.getTime())/1000;//将毫秒转化为秒

      // var day = parseInt(t/3600/24);//得到天

      // var hour = parseInt(t/3600%24);//得到小时

      // var min = parseInt((t/3600%24 - hour)*60);//得到分钟

      // var sec = parseInt(((t/3600%24 - hour)*60-min)*60);//得到秒

      // var str = day+'天'+hour+'小时'+min+'分'+sec+'秒';

      // return str

      //将以上逻辑继续简化

      var t = (a.getTime()-b.getTime())/1000;//将毫秒转化为秒

      var day = parseInt(t/(24*3600));

      var hour = parseInt(t%(24*3600)/3600);

      var min = parseInt(t%3600/60);

      var sec = parseInt(t%60);

      var str =  day+'天'+hour+'小时'+min+'分'+sec+'秒';

      return str;

}

    //页面打开时初始化一个时间

    var d1 = new Date();

console.log(d1.getTime());

var d2 = new Date('2020-1-1');

console.log(d2.getTime());

document.querySelector('span').innerText = time(d1,d2);

    //之后调用定时器,每隔一秒重新计算一遍

setInterval(function(){

d1 = new Date();

document.querySelector('span').innerText = time(d1,d2);

},1000);

</script>

</html>

上一篇下一篇

猜你喜欢

热点阅读