간펴니
간편 자바프로그래밍
간펴니
전체 방문자
오늘
어제
  • 전체보기 (185)
    • 알고리즘 (2)
    • JAVA (69)
      • 이펙티브 자바 (47)
      • JAVA 병렬프로그래밍 (5)
      • 자바 (17)
    • SPRING (60)
      • Spring (12)
      • IceWater Community (37)
      • Homme Shop (10)
      • 토비의 스프링 (1)
    • SPRING BOOT (4)
      • WhiteRecord (7)
    • 오류 (9)
    • DB (10)
      • ORACLE (5)
      • MYSQL (1)
      • MYBATIS (4)
      • JPA (0)
      • 대용량 데이터 베이스 (0)
      • SQL (0)
    • FRONT (8)
      • JSP (2)
      • JavaScript (2)
      • Jquery (3)
      • Thymeleaf (1)
    • AWS (6)
    • JNI (10)
    • 회고 (0)
    • MQ (0)
    • Radis (0)
    • Git (0)
    • Docker (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 블로그 컨셉 변경

인기 글

태그

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
간펴니

간편 자바프로그래밍

JS new Date() 와  input date 의  날짜 비교
FRONT/JavaScript

JS new Date() 와 input date 의 날짜 비교

2022. 1. 15. 02:51
728x90

input type="date"

<input> 태그의 date 타입을 document.getElementById().value 로 값을 가져오면

 

yyyy-mm-dd 의 형태로 값을 가져온다.

 

 js의 new Date() 함수를 사용해서 현재시간을 구하면 yyyy-mm-dd 형식이 아닌 다른 형식으로 date값이 저장된다.

 

때문에 <input type="date">의 값을 가져와서 js의 new Date()와 비교하기 위해선

 

파싱을 해줄 필요가 있겠다.


function getFormatDate(date){
    var year = date.getFullYear();              //yyyy
    var month = (1 + date.getMonth());          //M
    month = month >= 10 ? month : '0' + month;  //month 두자리로 저장
    var day = date.getDate();                   //d
    day = day >= 10 ? day : '0' + day;          //day 두자리로 저장
    return  year + '-' + month + '-' + day;       //'-' 추가하여 yyyy-mm-dd 형태 생성 가능
}

파싱을 위한 함수선언 

 


	let offerdate = document.getElementById("offerdate").value; // input date 값 가져오기
	let date = new Date(); //현재시간
	let minDate = getFormatDate(date); 
	
	date.setDate(date.getDate() + 90);
	let maxDate = getFormatDate(date);

현재시간인 minDate와 90일 후인 maxDate이다.


	if (offerdate < minDate) {
		toastr.options.preventDuplicates = true;
		toastr.warning("오늘 이후의 날짜를 선택해주세요");
		$("#offerdate").focus();

		return false;
	}
    
    
	if (offerdate > maxDate) {
		toastr.options.preventDuplicates = true;
		toastr.warning("+90일까지 설정 가능합니다.");
		$("#offerdate").focus();

		return false;
	}

input date로 선택한 시간의 범위를 지정해주기 위해 minDate와 maxDate 이용해서 현재시간 기준으로 날짜 비교를 했다.

728x90
저작자표시 (새창열림)

'FRONT > JavaScript' 카테고리의 다른 글

JS 타이머 함수  (1) 2022.01.28
    'FRONT/JavaScript' 카테고리의 다른 글
    • JS 타이머 함수
    간펴니
    간펴니
    개발공부 기록하는 곳

    티스토리툴바