- /**
- * 时间计算
- * @param
- * datepart 时间增加的形式
- * @param
- * number 时间增加的数量
- * @param
- * date 预增加的时间
- * @return
- * _returnDate 增加后的时间
- */
- private function dateAdd(datepart:String = "", number:Number = 0, date:Date = null):Date
- {
- if (date == null)
- {
- date = new Date();
- }
- var _returnDate:Date = new Date(date.time);;
- var _type = datepart.toLowerCase();
- switch (_type)
- {
- case "fullyear":
- case "month":
- case "date":
- case "hours":
- case "minutes":
- case "seconds":
- case "milliseconds":
- _returnDate[_type] += number;
- break;
- default:
- break;
- }
- return _returnDate;
- }
- /**
- * 日期比较(按天比较)
- *
- * @param date1
- * @param date2
- *
- * @return
- * 如果第一个参数的时间比第二个大,返回1,小返回-1,相等返回0
- * */
- private function dateCompare(date1:Date, date2:Date):int
- {
- if(date1.fullYear > date2.fullYear)
- {
- return 1;
- }
- else if(date1.fullYear < date2.fullYear)
- {
- return -1;
- }
- if(date1.month > date2.month)
- {
- return 1;
- }
- else if(date1.month < date2.month)
- {
- return -1;
- }
- if(date1.date > date2.date)
- {
- return 1;
- }
- else if(date1.date < date2.date)
- {
- return -1;
- }
- return 0; //相等
- }
- /**
- * 增加秒数
- *
- * @param data
- * @param count
- *
- * @return
- * 00:00:00形式字符串
- */
- private function secondsAdd(date:Date, count:int):String
- {
- var _newDate:Date = dateAdd("seconds",count,date);
- //取整
- var _h:int = _newDate.getHours()>>0;
- var _min:int = _newDate.getMinutes()>>0;
- var _s:int = _newDate.getSeconds()>>0;
- //补0
- var _hh:String = _h>9?String(_h):("0"+_h);
- var _minMin:String = _min>9?String(_min):("0"+_min);
- var _ss:String = _s>9?String(_s):("0"+_s);
- return _hh+":"+_minMin+":"+_ss;
- }
- /**
- * 两个日期之间相差的分钟数
- *
- * @param
- * dataStr 2012-01-02 04:33:10
- * @param
- * nextDataStr 2012-01-02 15:35:10
- *
- * @return _count 数据的个数
- */
- private function getCount(dataStr:String, nextDataStr:String):int
- {
- //正则表达式,将时间数字存入数组。
- var _pattern:RegExp = /-|:| /;
- var _timeArr:Array = dataStr.split(_pattern);
- var _nextTimeArr:Array = nextDataStr.split(_pattern);
- var _date:Date = new Date(_timeArr[0],_timeArr[1],_timeArr[2],_timeArr[3],_timeArr[4],_timeArr[5]);
- var _nextDate:Date = new Date(_nextTimeArr[0],_nextTimeArr[1],_nextTimeArr[2],_nextTimeArr[3],_nextTimeArr[4],_nextTimeArr[5]);
- var _count:int = (((Date.UTC(_nextTimeArr[0],_nextTimeArr[1],_nextTimeArr[2],_nextTimeArr[3],_nextTimeArr[4],_nextTimeArr[5])-Date.UTC(_timeArr[0],_timeArr[1],_timeArr[2],_timeArr[3],_timeArr[4],_timeArr[5]))/1000/60)+0.5)>>0;
- return _count;
- }