js中 計算兩個日期間的工作日的簡單實例
更新時間:2016年08月08日 09:13:54 投稿:jingxian
下面小編就為大家?guī)硪黄猨s中 計算兩個日期間的工作日的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
實例如下:
//起始日期,/pattern/是正則表達式的界定符,pattern是要匹配的內(nèi)容,只用于第一個符號的匹配,g為全局匹配標志
var beginDate = new Date("2013-01-01".replace(/-/g, "/"));
//結(jié)束日期
var endDate = new Date("2013-01-31".replace(/-/g, "/"));
//日期差值,即包含周六日、以天為單位的工時,86400000=1000*60*60*24.
var workDayVal = (endDate - beginDate)/86400000 + 1;
//工時的余數(shù)
var remainder = workDayVal % 7;
//工時向下取整的除數(shù)
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;
}
}
//實際工時(天) = 起止日期差 - 周六日數(shù)目。
workDayVal = workDayVal - weekendDay;
以上這篇js中 計算兩個日期間的工作日的簡單實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
用javascript實現(xiàn)自動輸出網(wǎng)頁文本
這篇文章主要介紹了用javascript實現(xiàn)自動輸出網(wǎng)頁文本,用到兩個函數(shù):setTimeout(),遞歸和String.substring();,需要的朋友可以參考下2015-07-07JS實現(xiàn)利用閉包判斷Dom元素和滾動條的方向示例
這篇文章主要介紹了JS實現(xiàn)利用閉包判斷Dom元素和滾動條的方向,涉及javascript閉包、事件響應(yīng)及頁面元素屬性動態(tài)操作相關(guān)使用技巧,需要的朋友可以參考下2019-08-08JavaScript使用AOP編程思想實現(xiàn)監(jiān)聽HTTP請求
這篇文章主要為大家詳細介紹了如何在JavaScript使用AOP編程思想實現(xiàn)監(jiān)聽HTTP請求,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2024-02-02JavaScript中使用replace結(jié)合正則實現(xiàn)replaceAll的效果
JavaScript?中使用?replace?達到?replaceAll的效果,其實就用利用的正則的全局替換。2010-06-06JavaScript撤銷恢復(fù)操作的實現(xiàn)方法詳解
這篇文章主要介紹了JavaScript撤銷恢復(fù)操作的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧2023-02-02