js中 计算两个日期间的工作日的简单实例


Posted in Javascript onAugust 08, 2016

实例如下:

//起始日期,/pattern/是正则表达式的界定符,pattern是要匹配的内容,只用于第一个符号的匹配,g为全局匹配标志
var beginDate = new Date("2013-01-01".replace(/-/g, "/"));
//结束日期
var endDate = new Date("2013-01-31".replace(/-/g, "/"));
//日期差值,即包含周六日、以天为单位的工时,86400000=1000*60*60*24.
var workDayVal = (endDate - beginDate)/86400000 + 1;
//工时的余数
var remainder = workDayVal % 7;
//工时向下取整的除数
var divisor = Math.floor(workDayVal / 7);
var weekendDay = 2 * divisor;

//起始日期的星期,星期取值有(1,2,3,4,5,6,0)
var nextDay = beginDate.getDay();
//从起始日期的星期开始 遍历remainder天
for(var tempDay = remainder; tempDay>=1; tempDay--) {
  //第一天不用加1
  if(tempDay == remainder) {
    nextDay = nextDay + 0;
  } else if(tempDay != remainder) {
    nextDay = nextDay + 1;
  }
  //周日,变更为0
  if(nextDay == 7) {
    nextDay = 0;
  }

  //周六日
  if(nextDay == 0 || nextDay == 6) {
    weekendDay = weekendDay + 1;
  }
}
//实际工时(天) = 起止日期差 - 周六日数目。
workDayVal = workDayVal - weekendDay;

以上这篇js中 计算两个日期间的工作日的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用js得到网页中所有的div的id
Oct 19 Javascript
Extjs列表详细信息窗口新建后自动加载解决方法
Apr 02 Javascript
为JavaScript类型增加方法的实现代码(增加功能)
Dec 29 Javascript
使用jQuery动态加载js脚本文件的方法
Apr 03 Javascript
javascript对JSON数据排序的3个例子
Apr 12 Javascript
Vue.js 表单校验插件
Aug 14 Javascript
js实现简单的二级联动效果
Mar 09 Javascript
详解.vue文件中监听input输入事件(oninput)
Sep 19 Javascript
一个有意思的鼠标点击文字特效jquery代码
Sep 23 jQuery
深入理解React高阶组件
Sep 28 Javascript
JS实现的A*寻路算法详解
Dec 14 Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
Aug 25 Javascript
WebSocket+node.js创建即时通信的Web聊天服务器
Aug 08 #Javascript
学习Javascript闭包(Closure)知识
Aug 07 #Javascript
JavaScript实现in-place思想的快速排序方法
Aug 07 #Javascript
使用jQuery调用XML实现无刷新即时聊天
Aug 07 #Javascript
JS中使用FormData上传文件、图片的方法
Aug 07 #Javascript
深入理解Angular2 模板语法
Aug 07 #Javascript
JS上传图片预览插件制作(兼容到IE6)
Aug 07 #Javascript
You might like
解析:使用php mongodb扩展时 需要注意的事项
2013/06/18 PHP
PHP动态页生成静态页的3种常用方法
2014/11/13 PHP
Laravel 解决419错误 -ajax请求错误的问题(CSRF验证)
2019/10/25 PHP
PHP与Web页面的交互示例详解二
2020/08/04 PHP
数组Array进行原型prototype扩展后带来的for in遍历问题
2010/02/07 Javascript
js parseInt("08")未指定进位制问题
2010/06/19 Javascript
Draggable Elements 元素拖拽功能实现代码
2011/03/30 Javascript
自定义一个jquery插件[鼠标悬浮时候 出现说明label]
2011/06/27 Javascript
jQuery过滤选择器:not()方法使用介绍
2014/04/20 Javascript
jQuery中last()方法用法实例
2015/01/06 Javascript
ECMAScript 6即将带给我们新的数组操作方法前瞻
2015/01/06 Javascript
JavaScript使用setTimeout实现延迟弹出警告框的方法
2015/04/07 Javascript
jQuery EasyUI实现右键菜单变灰不可用效果
2015/09/24 Javascript
详解AngularJS中的filter过滤器用法
2016/01/04 Javascript
概述VUE2.0不可忽视的很多变化
2016/09/25 Javascript
JavaScript中 this 指向问题深度解析
2017/02/21 Javascript
jQuery插件FusionCharts绘制的2D双面积图效果示例【附demo源码】
2017/04/11 jQuery
使用cropper.js裁剪头像的实例代码
2017/09/29 Javascript
对angularjs框架下controller间的传值方法详解
2018/10/08 Javascript
vue-cli 构建骨架屏的方法示例
2018/11/08 Javascript
vue使用keep-alive保持滚动条位置的实现方法
2019/04/09 Javascript
vue的滚动条插件实现代码
2019/09/07 Javascript
Python 查找list中的某个元素的所有的下标方法
2018/06/27 Python
python format 格式化输出方法
2018/07/16 Python
用Python写一个模拟qq聊天小程序的代码实例
2019/03/06 Python
python错误调试及单元文档测试过程解析
2019/12/19 Python
使用Python获取当前工作目录和执行命令的位置
2020/03/09 Python
Python替换NumPy数组中大于某个值的所有元素实例
2020/06/08 Python
读取nii或nii.gz文件中的信息即输出图像操作
2020/07/01 Python
美国著名手表网站:Timepiece
2017/11/15 全球购物
Myprotein西班牙官网:欧洲第一大运动营养品牌
2020/02/24 全球购物
ASICS印度官方网站:日本专业运动品牌
2020/06/20 全球购物
开除通知书范本
2015/04/25 职场文书
结婚主持人致辞
2015/07/28 职场文书
初中语文教学反思范文
2016/03/03 职场文书
python playwright 自动等待和断言详解
2021/11/27 Python