1. 程式人生 > >判斷當前日期在一個時間段日期中

判斷當前日期在一個時間段日期中

/* * 日期解析,字串轉日期    */
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 */

function dateCompare(dateString, compareDateString) {
var dateTime = dateParse(dateString).getTime();
  if(compareDateTime != null){
    var compareDateTime = dateParse(compareDateString).getTime();
  }

if (compareDateTime > dateTime) {
return 1;
} else if (compareDateTime == dateTime) {

return 0;
} else {
return -1;
}
};

/** * 判斷日期是否在區間內,在區間內返回true,否返回false */
function isDateBetween(dateString, startDateString, endDateString) {
if (startDateString == null && endDateString == null) {
return false;
}
var flag = false;
var startFlag = (dateCompare(dateString, startDateString) < 1);
if (startFlag && endDateString == null) {
return true;
}
var endFlag = (dateCompare(dateString, endDateString) > -1);
if (startFlag && endFlag) {
flag = true;
}
return flag;
};
可以傳入開始時間和結束時間,也可以只傳入開始時間。