js 日期比较大小,js判断日期是否在区间内,js判断时间段是否在另外一个时间段内

    /**
     * 日期解析,字符串转日期
     * @param dateString 可以为2017-02-16,2017/02/16,2017.02.16
     * @returns {Date} 返回对应的日期对象
     */
    function dateParse(dateString){
        var SEPARATOR_BAR = "-";
        var SEPARATOR_SLASH = "/";
        var SEPARATOR_DOT = ".";
        var dateArray;
        if(dateString.indexOf(SEPARATOR_BAR) > -1){
            dateArray = dateString.split(SEPARATOR_BAR);
        }else if(dateString.indexOf(SEPARATOR_SLASH) > -1){
            dateArray = dateString.split(SEPARATOR_SLASH);
        }else{
            dateArray = dateString.split(SEPARATOR_DOT);
        }
        return new Date(dateArray[0], dateArray[1]-1, dateArray[2]);
    };  

    /**
     * 日期比较大小
     * compareDateString大于dateString,返回1;
     * 等于返回0;
     * compareDateString小于dateString,返回-1
     * @param dateString 日期
     * @param compareDateString 比较的日期
     */
    function dateCompare(dateString, compareDateString){
        if(isEmpty(dateString)){
            alert("dateString不能为空");
            return;
        }
        if(isEmpty(compareDateString)){
            alert("compareDateString不能为空");
            return;
        }
        var dateTime = dateParse(dateString).getTime();
        var compareDateTime = dateParse(compareDateString).getTime();
        if(compareDateTime > dateTime){
            return 1;
        }else if(compareDateTime == dateTime){
            return 0;
        }else{
            return -1;
        }
    };  

    /**
     * 判断日期是否在区间内,在区间内返回true,否返回false
     * @param dateString 日期字符串
     * @param startDateString 区间开始日期字符串
     * @param endDateString 区间结束日期字符串
     * @returns {Number}
     */
    function isDateBetween(dateString, startDateString, endDateString){
        if(isEmpty(dateString)){
            alert("dateString不能为空");
            return;
        }
        if(isEmpty(startDateString)){
            alert("startDateString不能为空");
            return;
        }
        if(isEmpty(endDateString)){
            alert("endDateString不能为空");
            return;
        }
        var flag = false;
        var startFlag = (dateCompare(dateString, startDateString) < 1);
        var endFlag = (dateCompare(dateString, endDateString) > -1);
        if(startFlag && endFlag){
            flag = true;
        }
        return flag;
    };  

    /**
     * 判断日期区间[startDateCompareString,endDateCompareString]是否完全在别的日期区间内[startDateString,endDateString]
     * 即[startDateString,endDateString]区间是否完全包含了[startDateCompareString,endDateCompareString]区间
     * 在区间内返回true,否返回false
     * @param startDateString 新选择的开始日期,如输入框的开始日期
     * @param endDateString 新选择的结束日期,如输入框的结束日期
     * @param startDateCompareString 比较的开始日期
     * @param endDateCompareString 比较的结束日期
     * @returns {Boolean}
     */
    function isDatesBetween(startDateString, endDateString,
            startDateCompareString, endDateCompareString){
        if(isEmpty(startDateString)){
            alert("startDateString不能为空");
            return;
        }
        if(isEmpty(endDateString)){
            alert("endDateString不能为空");
            return;
        }
        if(isEmpty(startDateCompareString)){
            alert("startDateCompareString不能为空");
            return;
        }
        if(isEmpty(endDateCompareString)){
            alert("endDateCompareString不能为空");
            return;
        }
        var flag = false;
        var startFlag = (dateCompare(startDateCompareString, startDateString) < 1);
        var endFlag = (dateCompare(endDateCompareString, endDateString) > -1);
        if(startFlag && endFlag){
            flag = true;
        }
        return flag;
    };</span>  

js 日期比较大小,js判断日期是否在区间内,js判断时间段是否在另外一个时间段内

js判断时间区间是否在另外一个时间区间内,js时间格式化,js时间比较大小

原文地址:https://www.cnblogs.com/hnsongbiao/p/9076533.html

时间: 2024-11-08 14:51:06

js 日期比较大小,js判断日期是否在区间内,js判断时间段是否在另外一个时间段内的相关文章

MSSQL 判断一个时间段是否在另一个时间段内!

MSSQL 判断一个时间段是否在另一个时间段内! 1 CREATE TABLE #B 2 ( 3 MeetingRoom int, 4 BeginTime datetime, 5 EndTime datetime 6 ) 7 insert into #B 8 select 1,'2012-05-24 10:00:00','2012-05-24 16:00:00' 9 10 DECLARE @BeignTime datetime --查询开始时间 11 DECLARE @EndTime datet

js 判断日期时间大小

1 checkTime = function() { 2 var startTime = document.getElementById("startTime").value; 3 var endTime = document.getElementById("endTime").value; 4 compareCalendar(startTime, endTime); 5 } 6 //比较日前大小 7 function compareDate(checkStartD

JS判断两个日期的差或者判断两个日期的大小

判断两个日期之差 function DateDiff(sDate1,sDate2) { //sDate1和sDate2的格式为xxxx-xx-xx var aDate,oDate1,oDate2,iDays; //转换为xx-xx-xxxx格式 aDate = sDate1.split("-"); oDate1 = new Date(aDate[1] + "," + aDate[2] + "," + aDate[0]); aDate = sDat

js两个日期对比大小

 //适合格式(0000-00-00) //日期比较 function dateCompare(startdata, enddata) { var arr = startdata.split("-"); var starttime = new Date(arr[0], arr[1], arr[2]); var starttimes = starttime.getTime(); var arrs = enddata.split("-"); var lktime = n

js获取某周、某月、下月、某季度的开始日期、结束日期及判断日期第几周

/** * 获取某周.某月.上月.某季度的开始日期.结束日期及判断日期第几周 */ //格式化日期:yyyy-MM-dd function formatDate(date) { var myyear = date.getFullYear(); var mymonth = date.getMonth()+1; var myweekday = date.getDate(); if(mymonth < 10){ mymonth = "0" + mymonth; } if(myweekd

js 日期时间大小比较

<body> 开始时间:<input onfocus="setday(this)" id="startTime" name="startTime">到 结束时间:<input onfocus="setday(this)" id="endTime" name="endTime"> <input type="button" onc

js 比较日期大小及计算日期差

计算两个日期的差        var first = new Date(objstart.value.replace(/-/g,"/"));        var second = new Date(objend.value.replace(/-/g,"/"));         alert("日期1比日期2大:"+(first-second)/(24*60*60*1000)); 比较两个日期的大小        var date1 = new

js实现的时间戳和时间日期的转换

js实现的时间戳和时间日期的转换:时间戳和时间日期的转换是常见的操作,下面就通过代码实例介绍一下如何实现它们之间的相互转换.建议事先参阅javascript中Date()构造函数参数介绍一章节.一.时间日期转换为时间戳:现在有这么一个时间日期:"2013/5/12 20:10:20",下面将其转换为时间戳形式:代码如下: var dateStr="2013/5/12 20:10:20"; var date=new Date(dateStr); console.log

根据日期字符串获取星期几,日期获取星期,时间获取星期,js获取星期

根据日期字符串获取星期几,日期获取星期,时间获取星期,js获取星期 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>. 蕃薯耀 2016年12月30日 08:47:38 星期五 http://www.cnblogs.com/fanshuyao/ /** * 根据日期字符串获取星期几 *