본문 바로가기

Dev/Orvercome 3sec memory

자바스크립트 특정 시간 설정 및 현재시간 얻어오기

728x90

 

this.emergencyStartTime = new Date('2019-10-31T22:00:00');
this.emergencyEndTime = new Date('2019-11-01T00:00:00');

 

let currentTime = Date.now()
if((currentTime >= this.emergencyStartTime.getTime() && currentTime < this.emergencyEndTime.getTime())) {
alert("Message");
window.location.href="/"
}

시간을 비교할 때, 

(currentTime >= this.emergencyStartTime && currentTime < this.emergencyEndTime) 와 같이 했었는데

PC 웹상이나 안드로이드폰에서는 정상동작하지만, iOS에서는 동작하지 않는 이슈가 있었다.

iOS의 경우 시간정보을 얻어 올 때,

1. 위에 쓴 것 처럼 2019-11-01T00:00:00 와 같이 공백대신 T 문자를 사용해야 하고

2. 시간을 비교할 때 getTime()함수를 이용하여 timestamp 값을 사용해서 비교 값을 명확하게 제시해야 한다.

 

2019.12.26 update

위와같이 작업하고 잘 넘어갔는데, 같은 코드로 다음 이슈 대응에 실패했다.

안드로이드 폰과 아이폰에서 시간 값이 동일하게 출력되는 날짜 포맷은 다음과 같다.

new Date('December 26, 2019 13:00:00')