Date和应用

目录
01、显示当前时间
02、倒计时


01、显示当前时间

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>Date</title>
    <style type="text/css">
        body,div{
            margin: 0;
            padding: 0;
            font-family: "Microsoft YaHei", "微软雅黑", tahoma, arial, simsun, "宋体";
            font-size: 28px;
        }
        #div{
            margin: 10px auto;
            width: 800px;
            height: 50px;
            line-height: 50px;
            text-align: center;
            border: 1px solid red;
            background:-webkit-linear-gradient(top left,#FFBAB3,#00b7ee,#4CD964);
        }
    </style>
</head>
<body>
    <div id="div"></div>

    <script type="text/javascript">
        //获取当前自己电脑的时间;不能做重要的用途,例如淘宝秒杀
        //var time=new Date();
        //console.log(time);
        //Date.html:13 Thu Jul 20 2017 14:53:24 GMT+0800 (中国标准时间)
        //时间格式数据(对象数据类型的)
        //2017年07月20日 星期四 14时53分24秒

        var oDiv=document.getElementById('div');
        oDiv.innerHTML="北京时间:"+formatTime();
        varsetTime=setInterval(function(){
            oDiv.innerHTML="北京时间:"+formatTime();
        },1000);

        function formatTime(){
            var time=new Date();
            var year=time.getFullYear();
            var month=time.getMonth()+1;//0-11代表我们的1-12月
            var day=time.getDate();
            var w=time.getDay();//0-6之间,代表周日-周六
            var wStr="日一二三四五六",week=wStr.charAt(w);
            var hours=time.getHours();
            var minutes=time.getMinutes();
            var seconds=time.getSeconds();
            var mlSeconds=time.getMilliseconds();//毫秒
            return year+"年"+zero(month)+'月'+zero(day)+'日  星期'+week+'  '+zero(hours)+'时'+zero(minutes)+'分'+zero(seconds)+'秒';
        }

        function zero(val){
            return val<10?'0'+val:val;
        }
    </script>
</body>
</html>



02、倒计时

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>倒计时</title>
    <style type="text/css">
        body,div{
            margin: 0;
            padding: 0;
            font-family: "Microsoft YaHei", "微软雅黑", tahoma, arial, simsun, "宋体";
            font-size: 28px;
        }
        #div{
            margin: 10px auto;
            width: 800px;
            height: 50px;
            line-height: 50px;
            text-align: center;
            border: 1px solid red;
            background:-webkit-linear-gradient(top left,#FFBAB3,#00b7ee,#4CD964);
        }
    </style>
</head>
<body>
    <div id="div"></div>
    <script type="text/javascript">
        //把时间格式的字符串变成我们的标准时间格式
        //var str=new Date("2017-07-20 17:50:00");
        //对字符串的格式有要求
        //中间用'-'在IE6-8下不兼容,需要改成'/'

        var oDiv=document.getElementById('div');
        var targetTime="2017/07/20 19:50:00";
        var str=getSpanTime(targetTime);
        oDiv.innerHTML="距离下课:"+str;
        //每隔一秒,更新一次
        setInterval(function(){
            var str=getSpanTime(targetTime);
            oDiv.innerHTML="距离下课:"+str;
        },1000);

        /**
         * 倒计时, 计算当前时间 与 目标时间的时间差
         * @param targetTime 目标时间
         * @returns {string} 返回倒计时
         */
        function getSpanTime(targetTime){
            //getTime:获取距离1970年1月1日午夜(00:00)之间的毫秒差
            var tarTime=new Date(targetTime);
            var curTime=new Date();
            var tarSpan=tarTime.getTime();
            var curSpan=curTime.getTime();
            var difTime=tarSpan-curSpan;//当前时间距离目标时间的毫秒差
            //接下来我们用毫秒差算出包含多少个小时、分钟、秒就好
            //1、算出总毫秒中包含的小时有几个
            var hour=Math.floor(difTime/(1000*60*60));
            //2、算出当前这几个小时占了多少毫秒
            var hourMs=hour*60*60*1000;
            //3、接下来算分钟的时候,需要把小时占用的减去
            var spanMS=difTime-hourMs;
            //4、开始算s中包含多少分钟
            var minute=Math.floor(spanMS/(1000*60));
            //5、算这么多分钟占用多少毫秒
            var minuteMs=minute*60*1000;
            //6、算秒的时候把分钟占用的也减去
            spanMS=spanMS-minuteMs;
            //7、算剩下的包含多少秒
            var second=Math.floor(spanMS/1000);
            return zero(hour)+':'+zero(minute)+':'+zero(second);
        }
        /**
         * 补零,参数小于10,前面就补零
         * @param val 需要补零的参数
         * @returns {string} 返回结果
         */
        function zero(val){
            return val<10?'0'+val:val;
        }
    </script>
</body>
</html>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值