JavaScript--将秒数换算成时分秒

getTime()  返回距 1970 年 1 月 1 日之间的毫秒数

new Date(dateString) 定义 Date 对象的一种方式

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <script type="text/javascript" src="js/jquery-3.1.1.min.js"></script>
        <script type="text/javascript" src="My97DatePicker/WdatePicker.js"></script>
        <link rel="stylesheet" href="My97DatePicker/skin/WdatePicker.css" />
        <title></title>
        <script type="text/javascript">
            var timeStr = ""; //转换后的时间字符串
            var secondTime = ""; //时间差的秒数
            var minuteTime = ""; //时间差的分钟数
            var hourTime = ""; //时间差的小时数
            $(function() {
                $("#btn").click(function() {
                    var startTime = $("#startTime").val();
                    if(startTime == "") {
                        $("#errormsg").html("<p>开始时间不能为空!<p>");
                        return;
                    }
                    var endTime = $("#endTime").val();
                    if(endTime == "") {
                        $("#errormsg").html("<p>结束时间不能为空!<p>");
                        return;
                    }
                    
                    $("#errormsg").hide();   //隐藏div

                    var st = new Date(startTime);
                    var et = new Date(endTime);

                    if(st > et) {
                        alert("结束时间必须大于开始时间!");
                        return;
                    }

                    var endMilliseconds = et.getTime();
                    var startMilliseconds = st.getTime();
                    secondTime = (endMilliseconds - startMilliseconds) / 1000

                    //如果秒数大于60,将秒数转换成整数
                    if(secondTime > 60) {
                        //获取分钟,除以60取整数,得到整数分钟
                        minuteTime = parseInt(secondTime / 60);
                        //获取秒数,秒数取佘,得到整数秒数
                        secondTime = parseInt(secondTime % 60);
                        //如果分钟大于60,将分钟转换成小时
                        if(minuteTime > 60) {
                            //获取小时,获取分钟除以60,得到整数小时
                            hourTime = parseInt(minuteTime / 60);
                            //获取小时后取佘的分,获取分钟除以60取佘的分
                            minuteTime = parseInt(minuteTime % 60);
                            timeStr = hourTime + "小时" + minuteTime + "" + secondTime + "";
                        } else {
                            timeStr = minuteTime + "" + secondTime + "";
                        }
                    } else {
                        timeStr = secondTime + ""; //赋值持续时间
                    }
                    
                    $("#errormsg").html("时间差为:"+timeStr);
                    $("#errormsg").show();   //显示div
                })
            })
        </script>
    </head>

    <body>
        <span>开始时间:</span><input id="startTime" class="Wdate" type="text" onclick="WdatePicker({isShowClear:false,readOnly:true,dateFmt:'yyyy-MM-dd HH:mm:ss'})" /><br /><br />
        <span>结束时间:</span><input id="endTime" class="Wdate" type="text" onclick="WdatePicker({isShowClear:false,readOnly:true,dateFmt:'yyyy-MM-dd HH:mm:ss'})" /><br /><br />
        <button id="btn">点击确定</button>
        <div id="errormsg" style="color: red;"></div>
    </body>

</html>
原文地址:https://www.cnblogs.com/fengfuwanliu/p/10169081.html