728x90
* GMT: Greenwich Mean Time 런던 기점, 월링턴 종점으로하는 협셩 시계시 영국 시간 기준 (우리나라보다 9시간 느림)
* UTC: GMT임
* 크롬 브라우저
생성한 시간 그대로 Date 객체가 만들어짐.
const event = new Date('2022-04-22T00:00:00');
console.log(event); // Fri Apr 22 2022 00:00:00 GMT+0900 (한국 표준시)
console.log(event.toUTCString()); // Thu, 21 Apr 2022 15:00:00 GMT
* 사파리 브라우저
new Date()로 생성한 객체는 로컬 시간이 아닌, 이미 UTC 시간임.
사파리 브라우저에서 `new Date('ISOString')`를 사용하면, UTC 시간으로 만들어짐.
const event = new Date('2022-04-22T00:00:00');
console.log(event); // Fri Apr 22 2022 09:00:00 GMT+0900 (KST)
console.log(event.toUTCString()); // Fri, 22 Apr 2022 00:00:00 GMT
결론: 브라우저마다, Date 객체의 시간이 다름.
크로스 브라우징
new Date()로 만든 객체가 어떤 브라우저든, 동일한 시간을 가지게 하는 방법
방법 1. new Date() 생성할 때 첫 번째 인자는 표준 입력방식을 사용한다.
* 크롬
const event = new Date(2022, 4, 22, 00, 00, 00);
console.log(event); // Sun May 22 2022 00:00:00 GMT+0900 (한국 표준시)
console.log(event.toUTCString()); // Sat, 21 May 2022 15:00:00 GMT
* 사파리
const event = new Date(2022, 4, 22, 00, 00, 00);
console.log(event); // Sun May 22 2022 00:00:00 GMT+0900 (KST)
console.log(event.toUTCString()); // Sat, 21 May 2022 15:00:00 GMT
방법 2.
728x90
'자바스크립트' 카테고리의 다른 글
[vue + 무한 스크롤] 무한 스크롤 구현 (0) | 2022.05.20 |
---|---|
[Javascript] 이미지 파일 업로드 구현 (0) | 2022.05.13 |
[Javascript] try...catch throw 문법 (0) | 2022.04.25 |
[javascript] 시분초일자 등 01~09표현해야 하는 경우 스크립트 (0) | 2022.04.23 |
브라우저 cookie javascript로 쓰는 방법 (0) | 2022.04.20 |
댓글