首页 > 其他分享 >js将时间段自定义间隔分为时间段、将时间秒转为时-分-秒格式

js将时间段自定义间隔分为时间段、将时间秒转为时-分-秒格式

时间:2023-07-25 17:56:15浏览次数:29  
标签:minuteTime 00 自定义 js 60 var 时间段 result parseInt

实现场景:8:00-12:00上课,每节课45分钟,课间10分钟,获取上课时间段

结果:

//调用方法获取时间区间  总方法入口
gettimearr(gettimesecond(“8: 00: 00”), gettimesecond("12:00:00"), 45 * 60, 10 * 60);

/**
 * 将时间转为秒
 * @param {any} date   传入时间格式(字符串):8:00:00
 */
function gettimesecond(date) {
    var darr = date.split(':');
    return parseInt(darr[0]) * 3600 + parseInt(darr[1]) * 60 + parseInt(darr[2]);
}

/**
 * 获取节次时间
 * @param {any} startTime 起始时间   转换为秒   8:00    28800秒
 * @param {any} endTime 终止时间     转换为秒   12:00   43200秒
 * @param {any} l 课时时长     秒      
 * @param {any} g 课间间隔     秒
 */
function gettimearr(startTime, endTime, l, g) {
    var json = new Array();
    for (i = startTime; i < endTime; i = i + g) {
        //将秒转换为时分秒格式
        var s = formatSeconds(i);
        var e = formatSeconds(i + l);
        if (i + l < endTime) {
            var jsonitem = '{"course_begintime":"' + s + '","course_endtime":"' + e + '"}';
            console.error(jsonitem);
            json.push(jsonitem);
        }
        i = i + l;
    }
    console.error(json);
}

/**
 * 将时间秒转为时-分-秒格式
 * @param {any} value   秒
 */
function formatSeconds(value) {
    var secondTime = parseInt(value);// 秒
    var minuteTime = 0;// 分
    var hourTime = 0;// 小时
    if (secondTime > 60) {//如果秒数大于60,将秒数转换成整数
        //获取分钟,除以60取整数,得到整数分钟
        minuteTime = parseInt(secondTime / 60);
        //获取秒数,秒数取佘,得到整数秒数
        secondTime = parseInt(secondTime % 60);
        //如果分钟大于60,将分钟转换成小时
        if (minuteTime > 60) {
            //获取小时,获取分钟除以60,得到整数小时
            hourTime = parseInt(minuteTime / 60);
            //获取小时后取佘的分,获取分钟除以60取佘的分
            minuteTime = parseInt(minuteTime % 60);
        }
    }
    var result = "";
    if (secondTime > 0) {
        result = "" + parseInt(secondTime) + "秒";
    }
    else {
        result = "00秒";
    }
    if (minuteTime > 0) {
        result = "" + parseInt(minuteTime) + "分" + result;
    }
    else {
        result = "00分" +result;
    }
    if (hourTime > 0) {
        result = "" + parseInt(hourTime) + "小时" + result;
    }
else
{
result="00小时"+result;
}
return result;
}

 

标签:minuteTime,00,自定义,js,60,var,时间段,result,parseInt
From: https://www.cnblogs.com/ZhuMeng-Chao/p/17580493.html

相关文章

  • web前端tips:js继承——原型链继承
    原型链继承原型链继承是JavaScript中实现继承的一种方式,它通过使用原型来实现对象之间的继承关系。在JavaScript中,每个对象都有一个原型(prototype),它是一个指向另一个对象的引用。当我们访问一个对象的属性时,如果该对象自身没有该属性,则会去它的原型上查找,如果原型上也没有,则......
  • 前端-antd table 分页器自定义
      按照时间排序, ......
  • var js_usergroup_name python
    如何实现“varjs_usergroup_namepython”作为一名经验丰富的开发者,我很乐意教会刚入行的小白如何实现“varjs_usergroup_namepython”。在这篇文章中,我将为你展示整个实现过程,并提供每个步骤所需的代码和相应的注释。让我们开始吧!实现流程为了更好地理解整个实现过程,我将使......
  • JS中的浏览器对象模型-DOM(一)
    document对象中,document元素的选取、修改、添加、删除是常见的应用。元素的选取下面一段HTML代码,我们可以非常方便地选取指定的元素。例如:<!--HTML结构--><divid="test-div"><divclass="c-red"><pid="test-p">JavaScript</p>......
  • 用Dockerfile实现构建带sshd服务的自定义镜像
    使用Dockerfile构建带sshd服务的自定义镜像教程简介Docker是一种轻量级的容器化平台,可以帮助我们更方便地构建、部署和运行应用程序。本教程将教你如何使用Dockerfile来构建一个带sshd服务的自定义镜像。整体流程下面是构建自定义镜像的整体流程,我们将通过表格的形式展示每个步......
  • 视频直播源码,Android自定义Spinner样式
    视频直播源码,Android自定义Spinner样式设置Spinner的背景图,如下代码:   <Spinner          android:id="@+id/sp_gender"          android:layout_width="match_parent"          android:layout_height="mat......
  • json 包 转字符串为dict json.loads(data_str)
    importjson##假设有一个JSON对象#data={#"name":"John",#"age":30,#"city":"NewYork"#}###将JSON对象转换为字符串#json_str=json.dumps(data)##print(json_str)#str转json类型是字典data_......
  • yum 安装的 nginx 添加自定义模块后重新编译安装,限制城市IP
    yum安装的nginx添加自定义模块后重新编译安装总体思路:下载和当前系统相同版本的nginx,将要添加的模块在编译时添加编译,然后将编译好的nginx可执行文件替换原来/usr/sbin/nginx文件1.查看nginx版本信息root@www:~#nginx-Vnginxversion:nginx/1.14.1builtbygcc8.5.020......
  • antd 组件 select input cheeckboxGround 传参 自定义传参
    tempfunclog:......
  • 大json传输优化方法
    1.http流式传输数据压缩gzip、deflate、br分块传输Transfer-Encoding:chunked范围请求Range:bytes=0-100多段数据multipart/byteranges分隔标记boundary类似于文件上传下载2.json特有压缩算法     参考:基于HTTP流式传输的长时响应体验提升    ......