js 日期比较大小,js判断日期是否在区间内,js判断时间段是否在另外一个时间段内
js判断时间区间是否在另外一个时间区间内,js时间格式化,js时间比较大小
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
©Copyright 蕃薯耀 2017年3月8日
http://www.cnblogs.com/fanshuyao/
- <span style="line-height: 25.2px;">/**
- * 日期解析,字符串转日期
- * @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>
(如果你觉得文章对你有帮助,欢迎捐赠,^_^,谢谢!)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
©Copyright 蕃薯耀 2017年3月8日
http://www.cnblogs.com/fanshuyao/