本文轉載於: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中的日期比較,直接可以使用 > < 操作符用來比較日期對象,比如下面的函數,比較兩個日期對象,但是不能用 == 直接比較日期,所以這里用毫米數比較