日期:2014-05-16  浏览次数:20352 次

js时间处理
/**
  * 功能:将2010-10-12 14:12:03形式的字符串转换成时间对象
  * 参数:
  * timeString 日期对象;
  * 返回值:
  * 时间对象
  * 例如:
  * toTime("2010-10-12 14:12:03");
  */
function toTime(timeString) {
var y = timeString.substring(0,4);
var m = timeString.substring(5,7)-1;
var d = timeString.substring(8,10);
var h = timeString.substring(11,13);
var mm = timeString.substring(14,16);
var ss = timeString.substring(17,19);
var time = new Date(y,m,d,h,mm,ss,0);
return time;
}

/**
  * 功能:将时间对象转换成2010-10-12 14:12:03形式的字符串
  * 参数:
  * time 日期对象;
  * 返回值:
  * 2010-10-12 14:12:03形式的字符串
  * 例如:
  * toString(new Date());
  */
function toString(time) {
var year=time.getYear();
var month=time.getMonth()+1;
if(month<10)
{
month="0"+month;
}
var day=time.getDate();
if(day<10)
{
day="0"+day;
}
var hour=time.getHours();
if(hour<10)
{
hour="0"+hour;
}
var minute=time.getMinutes();
if(minute<10)
{
minute="0"+minute;
}
var second=time.getSeconds();
if(second<10)
{
second="0"+second;
}
var timeString = year+"-"+month+"-"+day+" "+hour+":"+minute+":"+second;
return timeString;
}

/**
  * 功能:比较两个时间的大小。
  * 参数:
  * time1 日期对象1;
  *     time2 日期对象2;
  * 返回值:
  * 如果time1>time2,返回1;
  * 如果time1=time2,返回0;
  * 如果time1<time2, 返回-1。
  * 例如:
  * compareTime((new Date()),)
  */
  function compareTime(time1,time2) {
  if(time1&&time2){
  if(time1.getTime()>time2.getTime()) return 1;
  else if(time1.getTime()==time2.getTime()) return 0;
  else if(time1.getTime()<time2.getTime()) return -1;
  }else{
  alert("时间不能为空!");
  }
  }
 
/**
  * 功能:完成时间对象的加减
  * 参数:
  * time 时间对象;
  * interval 时间差(毫秒级);
  * 返回值:
  * 返回计算后的时间
  * 例如:
  * 获取当前时间2天后的时间对象 getDateString(2*24*60*60*1000)
  */
 
function changeTime(time,interval)
{
time.setTime(now.getTime()+interval);
return time;
}

/**
  * 功能:获取距离当前时间 interval 毫秒的时间,转换成2010-10-12 14:12:03形式的字符串返回
  * 参数:
  * interval 距离当前时间的时间差(毫秒级);
  * 返回值:
  * 2010-10-12 14:12:03形式的字符串
  * 例如:
  * 获取当前时间2天后的时间 getDateString(2*24*60*60*1000)
  */
function getTimeString(interval)
{
var now = new Date();
changeTime(now,interval);
return toString(now);
}