js中字符串轉換為日期和比較大小


本文轉載於:http://yun342173024.iteye.com/blog/1873756
在做前端校驗的時候,要做日期比較的校驗,在js中把字符串轉化為日期,一時之間還真不知道在js中怎么把一個字符串格式的日期轉化為Date,查看了一些資料,在此分享下。
下面以調用js中Date(year,month,day)來生成一個日期對象。 

1.把字符串格式轉換為日期的函數,函數接受兩個參數,dateStr字符串日期格式,  separator日期格式分隔符,默認是-。,這里沒有對字符串的日期格式做校驗,因為大部分的日期都是通過日期控件選擇的,在此沒做校驗。

 

    var stringToDate = function(dateStr,separator){  
                                if(!separator){  
                                    separator="-";  
                                }  
                                var dateArr = dateStr.split(separator);  
                                var year = parseInt(dateArr[0]);  
                                var month;  
    //處理月份為04這樣的情況                          if(dateArr[1].indexOf("0") == 0){  
                                    month = parseInt(dateArr[1].substring(1));  
                                }else{  
                                     month = parseInt(dateArr[1]);  
                                }  
                                var day = parseInt(dateArr[2]);  
                                var date = new Date(year,month -1,day);  
                                return date;  
                            }  

 

 2.js中的日期比較,直接可以使用 > < 操作符用來比較日期對象,比如下面的函數,比較兩個日期對象,但是不能用 == 直接比較日期,所以這里用毫米數比較 
var compareDate = function(date1,date2){  
   return date1> date2;  
  }  
//比較日期相等  
var equals = function(date1,date2){  
    return date1.getTime() == date2.getTime();  
} 

注意,js中的日期對象的月份是0-11,不是1-12。把字符串格式轉化為日期格式是應把月份減去一,比如你把“2013-12-21”轉化為時間類型,會是2014-1-21。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM