테스트 사이트 - 개발 중인 베타 버전입니다

기간별 날짜 채택완료

선구자 8년 전 조회 2,099

</p><p>    var stDt</p><p>    var endDt</p><p>    var date = new Date()</p><p>    if ( between === 'all') {</p><p>    } else if (between=== 'day') {</p><p>      stDt= date</p><p>      endDt = new Date(date.valueOf() + 1000 * 3600 * 24)</p><p>      } else if (between === 'week') {</p><p>      stDt = date</p><p>      regEnd = new Date(date.valueOf() + 1000 * 3600 * 24 * 7)</p><p>    } else if (between === 'month') {</p><p>      stDt = date</p><p>      endDt = new Date(date.valueOf() + 1000 * 3600 * 24 * 31)</p><p>    }</p><p>
</p><p>


안녕하세요 위의 코드를 작성하였습니다.

동작되는것 까지 확인되었는데


date + 1을 1000 * 3600 * 24 이렇게 했는데

이것보다 더 좋은 방법이 있을것 같아서 질문드립나다.


console로 new Date()를 찍어보면 2017-10-23T04:45:43.164Z 이렇게 나옵니다.


오늘 날짜를 기준으로 아래의 날짜를 구하고 싶습니다.


1. 오늘날짜 

2. 이번달 1일 날짜 ex ) 2017-10-01

3. 이번주 월요일 날짜 ex) 2017-10-23 

4. 일주일전 날짜 

5. 한달전 날짜 


이렇게 구하고 싶습니다.


도움 부탁드립니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
플래토
8년 전
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

선구자
8년 전
시도는 해보았는데
DB에도 2017-10-23T04:51:36.607Z 식으로 저장되어있어서


between (new Date() , new Date() + 1)하며면

2017-10-23T04:51:36.607Z ~ 2017-10-24
이런식으로 변환되어서

질의 결과가 0으로 나옵니다.

따라서

new Date() 한 값에 1000 * 3600 * 24 (시간) 해보면

2017-10-23T04:51:36.607Z ~ 2017-10-24T04:51:36.607Z

질의가 되고요

답변 감사드립니다.

댓글을 작성하려면 로그인이 필요합니다.

DB에 값이 

yyyy-mm-dd 이렇게 저장되어야 하네요 

감사합니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인