2019独角兽企业重金招聘Python工程师标准>>>

要设置9~18点上下班,中午一小时午休,刨掉周六日,网上找了找没找到合适的方法,自己写了一个

<script type="text/javascript">function countSc(str1,str2){if(!str1 || !str2){return 0;}//开始构造两个日期对象var datetime1 = new Date(), datetime2 = new Date();datetime1.setFullYear(str1.substr(0,4),str1.substr(5,2)-1,str1.substr(8,2));datetime2.setFullYear(str2.substr(0,4),str2.substr(5,2)-1,str2.substr(8,2));datetime1.setMilliseconds(0);datetime2.setMilliseconds(0);datetime1.setHours(str1.substr(11,2),0,0);datetime2.setHours(str2.substr(11,2),0,0);if(datetime1.getDay() == 0 || datetime1.getDay() == 6){datetime1.setDate(datetime1.getDate() - 1);datetime1.setHours(23,0,0);}if(datetime1.getDay() == 0 || datetime1.getDay() == 6){datetime1.setDate(datetime1.getDate() - 1);datetime1.setHours(23,0,0);}if(datetime2.getDay() == 0 || datetime2.getDay() == 6){datetime2.setDate(datetime2.getDate() + 1);datetime2.setHours(0,0,0);}if(datetime2.getDay() == 0 || datetime2.getDay() == 6){datetime2.setDate(datetime2.getDate() + 1);datetime2.setHours(0,0,0);}var travelHours = 0;var datetime3 = datetime1;for(var i = 0;i < 60; i++){var sd = datetime1.getDate(),ed = datetime2.getDate();if(sd == ed - 1){break;}datetime1.setDate(datetime1.getDate() + 1);if(datetime1.getDay() > 0 && datetime1.getDay() < 6){travelHours += 8;}}if (parseInt(datetime3.getHours()) <= 9) {travelHours += 8;}else {if (parseInt(datetime3.getHours())<= 12) {travelHours += 12 - parseInt(datetime3.getHours()) + 5;}else {if (parseInt(datetime3.getHours()) <= 18) {travelHours += 18 - parseInt(datetime3.getHours());}}}if (parseInt(datetime2.getHours()) >= 18) {travelHours += 8;}else {if (parseInt(datetime2.getHours()) >= 13){travelHours += 3 + parseInt(datetime2.getHours()) - 13;}else {if (parseInt(datetime2.getHours()) >= 9) {travelHours += parseInt(datetime2.getHours()) - 9;}}}return travelHours;}
</script>

转载于:https://my.oschina.net/u/3538113/blog/2876776

js计算工时,去周末,设置上下班时间相关推荐

  1. JS 计算两个时间的间隔

    js 计算两个时间之间间隔的天数 var start = new Date('2019-12-10'); //开始的时间 var end = new Date('2020-01-09'); //结束的 ...

  2. 配置计算机能不能关机,win7电脑设置关机时间的详细步骤

    今天小编教大家一招设置win7系统关机时间的方法,有时候我们会下载一些大型游戏或文件,下载时间往往会比较长.如果傻傻的等着下载完成才关机,比较浪费时间就不能做其他事情.其实我们可以先设置一下定时关机, ...

  3. JS计算两个时间相差多久,相差年,月,日,小时,分钟

    计算一个时间戳距离当前的时间,例如: 几年前,几个月前,几天前,几小时前,几分钟前,刚刚. 输出效果 代码: function getDistanceDay(time) {let stime = ne ...

  4. 如何在html上显示时间设置,js实现在网页上简单显示时间的方法

    本文实例讲述了js实现在网页上简单显示时间的方法.分享给大家供大家参考.具体如下: 这是一款网页时钟JS代码,纯javascript实现,显示时.分.秒.网页时间显示.网页时钟有很多,这个真的挺简易的 ...

  5. js 设置当前时间的后20分钟、后一小时、前一天等等相对时间

    不管是设置相对当前时间有多久时间差的时间,统一思路为:先获取当前时间的时间戳,再根据需求加减时间获得新的时间戳,然后取年月日与时分秒.实例如下: // 设置默认时间--先转化为毫秒数,加上 20 分钟 ...

  6. c# redis hashid如何设置过期时间_Redis数据库实现原理(划重点)

    Redis服务器将所有数据库都保存在服务器状态redis.h/redisServer结构的db数组中,db数组的每一项都是一个redis.h/redisDb结构,每个redisDb结构代表一个数据库, ...

  7. linux系统中防止系统时间,设置系统时间与在Linux中

    设置系统时间的GPS timestamp_t结构与GPS在Linux的设置系统时间与在Linux中 timestamp_t结构 大家好, 我想,一旦我得到一个succesfull GPS锁定(写代码A ...

  8. java如何保证redis设置过期时间的原子性_分布式锁用 Redis 还是 Zookeeper

    在讨论这个问题之前,我们先来看一个业务场景: 系统A是一个电商系统,目前是一台机器部署,系统中有一个用户下订单的接口,但是用户下订单之前一定要去检查一下库存,确保库存足够了才会给用户下单. 由于系统有 ...

  9. php计算两个日期之间的小时数,PHP_php 计算两个时间戳相隔的时间的函数(小时),这个是可以具体到小时的php代 - phpStudy...

    php 计算两个时间戳相隔的时间的函数(小时) 这个是可以具体到小时的php代码 复制代码 代码如下: /* Author: 杨宇 yangyu@sina.cn */ //输入两个时间戳,计算差值,也 ...

最新文章

  1. layui 动态添加 表格数据
  2. 文本分类模型_文本分类模型之TextCNN
  3. linux服务器不能访问,无法在远程Linux服务器上访问tomcat
  4. mybatis+spring报错PropertyAccessException 1
  5. 【数据挖掘】数据挖掘和数据分析基础
  6. c 调用上层类中函数_Matlab系列之函数嵌套
  7. Multiple methods named 'status' found with mismatched result, parameter type or attributes
  8. ztree带有选项框的树形菜单使用
  9. 123 Python程序中的线程操作-协程
  10. Salesforce基础名词
  11. oracle cube 交叉分组,oracle的ROLLUP跟CUBE语句分组(转)
  12. BZOJ 3505: [Cqoi2014]数三角形 数学
  13. 高效实现统计分析(按日,月,周)查询功能
  14. python海龟画笔速度_【判断题】Python海龟绘图中,设置画笔绘制速度的函数是speed()。...
  15. Okra框架(二) 搭建Socket服务器
  16. 【初识数据结构】手把手教会你时间复杂度的计算方法
  17. vex机器人 亚洲公开赛_VEX机器人亚洲公开赛,乐博乐博学员勇夺双料冠军!
  18. [高考真题]2012年普通高等学校招生全国统一考试 英语(四川卷)
  19. 1095 习题6-9 折半查找
  20. 如何使用iAd在应用程序中展示Banner广告

热门文章

  1. CSS模块化方案分类
  2. 面试中常问的HTTP/1.0状态码
  3. 手机常用分页加载loading框
  4. Windows下安装maven-nexus私服
  5. java web 项目打成war包部署到服务器上
  6. OpenCV:Surface Matching 3D
  7. hadoop删除节点
  8. 第二章:方法区和运行时常量池溢出
  9. docker入门,基于ubuntu16.04
  10. 覆盖所有类型的javascript深度克隆