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

js로 현재시간 표시 어떻게 하면 될까요? 채택완료

오땡스 2년 전 조회 2,596

예: GMT+9 2023-03-10 01:42:21 (금)

이렇게 나타내고 싶은데

현재 사용중인 코드는 이렇게 사용하고 있거든요...

근데 문제는 해외에서 접속하면 해당지역의 시간으로 표시되어서

서울시간으로 고정해서 표시되게 하고 싶습니다.

도와주세요 

 

</strong></p>

<p><h1 id="clock" style="color:black;">clock</h1>

    

    <script>

        var Target = document.getElementById("clock");

        function clock() {

            var time = new Date();</p>

<p>            var month = time.getMonth();

            var date = time.getDate();

            var day = time.getDay();

            var week = ['일', '월', '화', '수', '목', '금', '토'];</p>

<p>            var hours = time.getHours();

            var minutes = time.getMinutes();

            var seconds = time.getSeconds();</p>

<p>            Target.innerText = 

            `${month + 1}월 ${date}일 ${week[day]} ` +

            `${hours < 10 ? `0${hours}` : hours}:${minutes < 10 ? `0${minutes}` : minutes}:${seconds < 10 ? `0${seconds}` : seconds}`;

                

        }

        clock();

        setInterval(clock, 1000); // 1초마다 실행

    </script></p>

<p><strong>
 

 

이걸 UTC-9 시간대로 고정하고 싶은데 어떻게 수정해야 될까요?

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

답변 2개

자체해결 했습니다.

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

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

c
2년 전

</strong></p>

<p><h1 id="clock" style="color:black;">clock</h1>

    

    <script>

        var Target = document.getElementById("clock");

        function clock() {

            var time = new Date();</p>

<p>            // UTC-9시간대로 고정하기

            time.setHours(time.getHours() + 9);

            var month = time.getMonth();

            var date = time.getDate();

            var day = time.getDay();

            var week = ['일', '월', '화', '수', '목', '금', '토'];</p>

<p>            var hours = time.getHours();

            var minutes = time.getMinutes();

            var seconds = time.getSeconds();</p>

<p>            Target.innerText = 

            `GMT+9 ${month + 1}월 ${date}일 ${week[day]} ` +

            `${hours < 10 ? `0${hours}` : hours}:${minutes < 10 ? `0${minutes}` : minutes}:${seconds < 10 ? `0${seconds}` : seconds}`;

                

        }

        clock();

        setInterval(clock, 1000); // 1초마다 실행

    </script></p>

<p><strong>

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

답변에 대한 댓글 2개

오땡스
2년 전
음... 역시 현재 시간에 9시간을 더한 값을 나타내고 있는것 같은데요...
미국서버로 접속해보면 역시 시간이 이상하게 나타납니다...
시간을 더해지는 값이 아닌 gmt+9 시간대로 고정을 할수 없을까요?
엑스엠엘
2년 전
https://stackoverflow.com/questions/85116/display-date-time-in-users-locale-format-and-time-offset
참고하세요.

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

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

로그인