美文网首页
js对日期时间的比较、倒计时、格式转换等的一些操作笔记

js对日期时间的比较、倒计时、格式转换等的一些操作笔记

作者: Ruby_min | 来源:发表于2017-11-30 20:40 被阅读0次

       就最近遇到的几个有关日期时间的方法进行记录。
       1、js获取当前系统时间的格式转换问题:

//获取当前系统时间
    var myDate = new Date();
    var mytime=myDate.toLocaleTimeString();
    console.log(mytime);//结果为 "下午8:18:32"

       如果需要将上下午12小时制更改为全天24小时制,则可以通过以下方法获取:

function getNowFormatTime() {
        var date = new Date();
        var seperator1 = "-";
        var seperator2 = ":";
        var hour = date.getHours();
        var minute = date.getMinutes();
        var seconds = date.getSeconds();
        if (hour >= 1 && hour <= 9) {
            hour = "0" + hour;
        }
        if (minute >= 0 && minute <= 9) {
            minute = "0" + minute;
        }
        if (seconds >= 0 && seconds <= 9) {
            seconds = "0" + seconds;
        }
        var currenttime = hour + seperator2 + minute + seperator2 + seconds;
        return currenttime;
    }
    var time = getNowFormatTime();
    console.log(time);//结果为 "20:25:06"

       2、将当前系统日期时间与目标日期时间进行比较,判断目标时间是否已经超过当前系统时间。

var comp = function(date) {
        var now = new Date;
        var d = new Date(date);
        if (now > d) {
            alert("当前时间大于目标时间");
        } else if (now < d) {
            alert("当前时间小于目标时间");
        } else {
            alert("当前时间等于目标时间");
        }
    }
comp("2017-11-30 16:16:13");

       3、倒计时(可用于各种需要倒计时的场合中,比如考试系统考试时对考试时间的倒计时)

    //先将倒计时总时间转换成秒数
    //例如倒计时时间为30分钟
    var totalsecond = 30*60;
    //封装函数
    function deadlinetime(){        
        totalsecond--;
        //当剩余秒数为0时提交试卷
        if(totalsecond == 0){
            alert("时间已经结束!");
            //do something
        }
        //剩余小时
        var remainhour = Math.floor(totalsecond/3600);
        //剩余分钟
        var remainminite = Math.floor((totalsecond-3600*remainhour)/60);
        //剩余秒数
        var remainsecond = Math.floor(totalsecond-3600*remainhour-60*remainminite);
        //页面赋值显示操作,body部分是三个label标签
        $("#remainhour").text(remainhour+"小时");
        $("#remainminite").text(remainminite + "分钟");
        $("#remainsecond").text(remainsecond + "秒");
    }
    //定时器判断是否已经到结束时间,其间隔必须是1000毫秒,也就是一秒,这样才能和deadlinetime函数中的"totalsecond--"相对应起来.
    var deadlinesetTime = setInterval(deadlinetime,1000);

       以上。

相关文章

网友评论

      本文标题:js对日期时间的比较、倒计时、格式转换等的一些操作笔记

      本文链接:https://www.haomeiwen.com/subject/dmcbbxtx.html