JS计算时间间隔

            var $outDateTime = $('#spanOutTime').html();
            var $backDateTime = $('#BackTime', $('#fm-hcdj')).val();

            var $outDate = $outDateTime.split(' ')[0];
            var $outTime = $outDateTime.split(' ')[1];

            var $backDate = $backDateTime.split(' ')[0];
            var $backTime = $backDateTime.split(' ')[1];

            //将开始日期以-为分割线分割成数组
            var sd = $outDate.split("-");
            //将开始时间以:为分割线分割成数组
            var st = $outTime.split(":");
            //将结束日期以-为分割线分割成数组
            var ed = $backDate.split("-");
            //将结束时间以:为分割线分割成数组
            var et = $backTime.split(":");

            //将开始日期转成日期格式
            var ds = new Date(sd[0], sd[1], sd[2]);
            //将结束日期转成日期格式
            var es = new Date(ed[0], ed[1], ed[2]);
            //定义间隔时数
            var result = 0;
            //定义第一天小时数
            var hours1 = 0;
            //定义最后一天小时数
            var hours2 = 0;
            //得到间隔天数
            var date = (es - ds) / 86400000;

            if (date < 0) {
                $('#BackTime', $('#fm-hcdj')).val('');
                return;
            }

            //计算小时
            var shours = parseFloat(st[0]) + parseFloat(st[1] / 60) + parseFloat(st[1] / 60 / 60);
            var ehours = parseFloat(et[0]) + parseFloat(et[1] / 60) + parseFloat(et[1] / 60 / 60);
            var dayTime = ehours - shours;

            result = (date * 24) + dayTime;

            $('#Ycsc', $('#fm-hcdj')).numberbox('setValue', result.toFixed(1));

            var $outDateTime = $('#spanOutTime').html();            var $backDateTime = $('#BackTime', $('#fm-hcdj')).val();
            var $outDate = $outDateTime.split(' ')[0];            var $outTime = $outDateTime.split(' ')[1];
            var $backDate = $backDateTime.split(' ')[0];            var $backTime = $backDateTime.split(' ')[1];
            //将开始日期以-为分割线分割成数组            var sd = $outDate.split("-");            //将开始时间以:为分割线分割成数组            var st = $outTime.split(":");            //将结束日期以-为分割线分割成数组            var ed = $backDate.split("-");            //将结束时间以:为分割线分割成数组            var et = $backTime.split(":");
            //将开始日期转成日期格式            var ds = new Date(sd[0], sd[1], sd[2]);            //将结束日期转成日期格式            var es = new Date(ed[0], ed[1], ed[2]);            //定义间隔时数            var result = 0;            //定义第一天小时数            var hours1 = 0;            //定义最后一天小时数            var hours2 = 0;            //得到间隔天数            var date = (es - ds) / 86400000;
            if (date < 0) {                $('#BackTime', $('#fm-hcdj')).val('');                return;            }
            //计算小时            var shours = parseFloat(st[0]) + parseFloat(st[1] / 60) + parseFloat(st[1] / 60 / 60);            var ehours = parseFloat(et[0]) + parseFloat(et[1] / 60) + parseFloat(et[1] / 60 / 60);            var dayTime = ehours - shours;
            result = (date * 24) + dayTime;
            $('#Ycsc', $('#fm-hcdj')).numberbox('setValue', result.toFixed(1));

原文地址:https://www.cnblogs.com/marslin/p/3749360.html