>  기사  >  웹 프론트엔드  >  현재 JavaScript에서 일광 절약 시간이 적용되고 있는지 확인하는 방법은 무엇입니까?

현재 JavaScript에서 일광 절약 시간이 적용되고 있는지 확인하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-19 15:28:03635검색

How to Determine if Daylight Saving Time Is Currently in Effect in JavaScript?

일광 절약 시간(DST) 상태 확인

JavaScript에서 시차를 정확하게 계산하는 것은 DST의 영향을 받을 수 있습니다. DST는 현지 시간을 다음과 같이 조정합니다. 한 시간. 이를 처리하려면 DST가 적용되는지 확인하는 것이 중요합니다.

DST 상태 확인

Date 개체는 로컬 간의 차이를 반환하는 getTimezoneOffset을 통해 솔루션을 제공합니다. 시간과 UTC(분)입니다. 그러나 getTimezoneOffset은 UTC 서쪽 시간대(예: 로스앤젤레스)에 대해서는 양수 값을 반환하고 UTC 동쪽 시간대(예: 시드니)에 대해서는 음수 값을 반환합니다.

이를 설명하기 위해 다음 코드 조각은 다음을 수행할 수 있습니다. 사용:

Date.prototype.stdTimezoneOffset = function() {
  var jan = new Date(this.getFullYear(), 0, 1);
  var jul = new Date(this.getFullYear(), 6, 1);
  return Math.max(jan.getTimezoneOffset(), jul.getTimezoneOffset());
};

Date.prototype.isDstObserved = function() {
  return this.getTimezoneOffset() < this.stdTimezoneOffset();
};

stdTimezoneOffset 함수는 1월과 7월 사이의 더 큰 오프셋 값을 반환하여 효과적으로 표준 시간을 나타냅니다. 오프셋. 그런 다음 isDstObserved 함수는 현재 오프셋을 이 표준 오프셋과 비교합니다. 현재 오프셋이 더 작으면 DST가 사용 중임을 나타냅니다.

사용 예

var today = new Date();
if (today.isDstObserved()) {
  alert("Daylight saving time!");
}

참고: DST 시작 및 종료 날짜 지역마다 다르므로 정확한 정보는 현지 출처에 문의하는 것이 좋습니다.

위 내용은 현재 JavaScript에서 일광 절약 시간이 적용되고 있는지 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.