實例如下:
//起始日期,/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中 計算兩個日期間的工作日的簡單實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。