工作日两个日期之间的数

工作日两个日期之间的数

 近期遇到要求两个日期之间的工作日天数的问题。遂在网上找了下js的代码。參考了下别人的代码,发现写的都有些冗余,于是自己思考,进行了一下简单处理。主要是在循环处理上进行了精简。
 对剩余天数的循环,也就能够考虑是对開始日期到剩余天数之间的处理,循环開始日期到剩余天数之间有多少个周六周日(最多仅仅有一个周六或者一个周日)。因为当前開始日期在(0-6)之间,也就是当前開始日期的星期相应的数字加上剩余天数(0-6)的循环一定在(0-11)之间。所以0,7代表周日,6代表周六。
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gbk"> 
<title>工作日计算</title> 
<script language="javascript"> 
//函数
function getWorkDays(){
var startDate = new Date(document.getElementById("startDate").value.replace(/-/g, "/"));  
//结束日期
var endDate = new Date(document.getElementById("endDate").value.replace(/-/g, "/"));  
	   var diffDays = (endDate - startDate)/(1000*60*60*24) + 1;//获取日期之间相差的天数
	   var remainDay = diffDays % 7;//得到日期之间的余数(0-6之间)
	   var weeks = Math.floor(diffDays / 7);//获取日期之间有多少周
	   var weekends = 2 * weeks;//计算每周*2 得到取整的的周六日天数
	   var weekDay = startDate.getDay();//获取開始日期为星期几(0,1。2,3。4,5,6)0相应星期日
	   for(var i = 0;i < remainDay;i++){//循环处理余下的天数有多少个周六或者周日(最多出现一个周六或者一个周日)
				if(((weekDay + i)==6)||((weekDay + i)==0)||((weekDay + i)==7)){
					weekends = weekends + 1;
				}
			}
	   alert((diffDays-weekends));//工作日=相差天数减去周六日天数

}

</script> 
</head> 
<body> 
<form> 
起始日期:<input type="text" id="startDate" name="startDate" value="2012/03/01">   截至日期<input type="text" id="endDate" name="endDate" value="2014/05/20">
<input type="button" name="BT" value="计算工作日" οnclick="getWorkDays()"> 
</form> 
</body> 
</html>

版权声明:本文博主原创文章。博客,未经同意不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/109317.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 软件测试常见面试题

    软件测试常见面试题伴随着疫情的好转,又到了一年收获的季节。最近也有一些面试,整理下常用的测试题目,没有标准答案,需要结合自身的工作实践去应答。功能测试相关1、测试流程以及对应阶段的输出有哪些?2、Bug的优先级

  • 贪心 Codeforces Round #263 (Div. 2) C. Appleman and Toastman

    贪心 Codeforces Round #263 (Div. 2) C. Appleman and Toastman

  • Python正则表达式(一看就懂)

    Python正则表达式(一看就懂)哈喽O(∩_∩)O今天来发一下python正则表达式,其实这个也是比较简单的什么是正则表达式(⊙_⊙)目前越来越多的网站、编辑器、编程语言都已支持一种叫“正则表达式”的字符串查找“公式”,有过编程经验的同学都应该了解正则表达式(RegularExpression简写regex)是什么东西,它是一种字符串匹配的模式(pattern),更像是一种逻辑公式。简单说,正则表达式是python中必备的工具,主要是用来查找和匹配字符串的。正则表达式尤其在python爬虫上用的多。正则表达

  • 平分石头

    平分石头平分石头题目描述:有一n个石头,它们的重量分别是W1,…,Wn.写一个程序,把它们分成两堆,使得两堆石头的重量差最小。输入格式:输入n(1≤n≤20)表示石头的个数。第二行n个石头的重量W1,…,Wn(1≤Wi≤100000)输出格式:输入最小的差(绝对值)样例输入:5581327…

  • html中table表格里的内容如何居中「建议收藏」

    html中table表格里的内容如何居中「建议收藏」1.table表格整个居中<divstyle=”text-align:center;”><tableborder=”1″style=”margin:auto;”width=’60%’>……</table></div>我们在table外围div中加入样式style=”text-align:center;”,会发现table表格居中不生效,原因最后说。所以我们在<tableb…

  • 数据库原理与应用基础(MySQL)_交互装置工作原理

    数据库原理与应用基础(MySQL)_交互装置工作原理MYSQL数据交互原理与性能问题分析

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号