JavaScript中字符串转换为日期和比较大小

原文地址:http://yun342173024.iteye.com/blog/1873756

下面以调用js中Date(year,month,day)来生成一个日期对象。  

1.把字符串格式转换为日期的函数,函数接受两个参数,dateStr字符串日期格式,  separator日期格式分隔符,默认是-。,这里没有对字符串的日期格式做校验,因为大部分的日期都是通过日期控件选择的,在此没做校验。 
 

Js代码   收藏代码
  1. var stringToDate = function(dateStr,separator){  
  2.                             if(!separator){  
  3.                                 separator="-";  
  4.                             }  
  5.                             var dateArr = dateStr.split(separator);  
  6.                             var year = parseInt(dateArr[0]);  
  7.                             var month;  
  8. //处理月份为04这样的情况                          if(dateArr[1].indexOf("0") == 0){  
  9.                                 month = parseInt(dateArr[1].substring(1));  
  10.                             }else{  
  11.                                  month = parseInt(dateArr[1]);  
  12.                             }  
  13.                             var day = parseInt(dateArr[2]);  
  14.                             var date = new Date(year,month -1,day);  
  15.                             return date;  
  16.                         }  


2.js中的日期比较,直接可以使用 > < 操作符用来比较日期对象,比如下面的函数,比较两个日期对象,但是不能用 == 直接比较日期,所以这里用毫米数比较  
Js代码   收藏代码
  1.  var compareDate = function(date1,date2){  
  2.    return date1> date2;  
  3.   }  
  4. //比较日期相等  
  5. var equals = function(date1,date2){  
  6.     return date1.getTime() == date2.getTime();  
  7. }  

   
注意,js中的日期对象的月份是0-11,不是1-12。把字符串格式转化为日期格式是应把月份减去一,比如你把“2013-12-21”转化为时间类型,会是2014-1-21。

你可能感兴趣的:(JavaScript中字符串转换为日期和比较大小)