javascript 날짜 유효성 검사
2010.07.08 10:41 Edit
javascript date 객체는 쓰기 편하고 해서 좋긴한데 너무 관대하다 보니 잘못된 format이 들어오는 경우
13/01/2010 -> 01/01/2011로 변환시켜 버리는 황당한 처리를 해줍니다.
그러다 보니 날짜 validation을 제대로 해주지 않으면 안되는 상황이 종종 생겨 날짜가 진짜 유효한건지 체크하는 로직이 필요해 기록해 둡니다.
구글링 : javascript date validation
원문 : http://www.jsmadeeasy.com/javascripts/Forms/Date%20Validation/template.htm
// dateString : 07/07/2010, return true
// dateString : 13/01/2010, return false
function checkdateformat(dateString){
var dateStr = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;
var matchArray = dateStr.exec(dateString); // is the format ok?
if (matchArray == null) {
return false;
}
var month = matchArray[1]; // parse date into variables
var day = matchArray[3];
var year = matchArray[4];
if (month < 1 || month > 12) { // check month range
return false;
}
if (day < 1 || day > 31) {
return false;
}
if ((month==4 || month==6 || month==9 || month==11) && day==31) {
return false;
}
if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day>29 || (day==29 && !isleap)) {
return false;
}
}
return true;
}이 글과 관련된 글
- [2011/10/23] jquery로 ajax호출시 로딩이미지 보여주기 (1165)
- [2011/10/06] javascript에서 replaceAll을 써보자 (387)
- [2011/05/27] 20110330_array of Array _ javascript _ event (539)
- [2011/05/27] 20110329_Lists _ table _ form_tag _ javascript _ variables _ Operator _ 제어문 _ Array (676)
- [2011/05/11] NSDate / NSDateFormatter (2154)
- Tag :
- javascript , date , validation
브라우저별 GET 방식 Character 사이즈와 jQuery ajax Post 처리
[TDD] Video tutorial: Test Driven Development in practice
