zoukankan      html  css  js  c++  java
  • 日期间隔(除去周六、日)

        //日期间的工作日
        function calculateWorkDays(fromStr, toStr, holidayArray) {
            var from = new Date();
            var to = new Date();
            var fromTime = Date.parse(fromStr);
            var toTime = Date.parse(toStr);
            from.setTime(fromTime);
            from.setHours(0);
            from.setMinutes(0);
            from.setSeconds(0);
            var orgTime = from.getTime();
    
            to.setTime(toTime);
            to.setHours(0);
            to.setMinutes(0);
            to.setSeconds(0);
    
            if (from.getTime() > to.getTime()) {
                return 0;
            }
            //把起始日都修正到星期六 javascript的星期0始,所以+1??理 
            var sDayofWeek = from.getDay() + 1;
            var workdays = 0;
    
            if (sDayofWeek > 1 && sDayofWeek < 7) {
                from.setDate(from.getDate() - (sDayofWeek % 7));
                workdays -= ((sDayofWeek - 2) > 0) ? sDayofWeek - 2 : 0;
            }
            //
    
            var totalDays = (to.getTime() - from.getTime()) / (1000 * 60 * 60 * 24) + 1;
            workdays += Math.floor(totalDays / 7) * 5;
    
            //修正最后剩余天? 
            if ((totalDays % 7 - 2) > 0) {
                workdays += (totalDays % 7 - 2);
            }
    
            if (holidayArray != null) {
                for (var i = 0; i < holidayArray.length; i++) {
                    if (holidayArray[i].getTime() > orgTime && holidayArray[i].getTime() < to.getTime()) {
                        if (holidayArray[i].getDay() > 0 && holidayArray[i].getDay() < 6) {
                            workdays--;
                        }
                    }
                }
            }
            return workdays;
    
        }
  • 相关阅读:
    swt 更新主UI线程
    java中 快捷键输入System.out.println();
    原型设计工具
    JAVA笔记
    转:java读取配置文件的几种方法
    Server Message Block
    安全标识符
    BitLocker:如何启用网络解锁
    imageX.exe
    组策略首选项
  • 原文地址:https://www.cnblogs.com/chirifengye/p/2981998.html
Copyright © 2011-2022 走看看