>웹 프론트엔드 >JS 튜토리얼 >시간대 없이 JavaScript에서 날짜를 구문 분석하는 방법은 무엇입니까?

시간대 없이 JavaScript에서 날짜를 구문 분석하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-10-25 22:28:45930검색

How to Parse Dates in JavaScript Without a Time Zone?

JavaScript에서 시간대 없이 날짜를 구문 분석

JavaScript에서 지정된 시간대 없이 날짜를 구문 분석하는 것은 어려울 수 있습니다. Date.parse() 함수는 현지 시간대를 가정하므로 사용자의 현재 위치에 따라 잘못된 결과가 발생할 수 있습니다.

문제:

문제를 설명하려면 , 시간대 없이 날짜를 구문 분석하려는 다음 시도를 고려하십시오.

<code class="javascript">new Date(Date.parse("2005-07-08T00:00:00+0000")); // Fri Jul 08 2005 02:00:00 GMT+0200
new Date(Date.parse("2005-07-08 00:00:00 GMT+0000")); // Fri Jul 08 2005 02:00:00 GMT+0200
new Date(Date.parse("2005-07-08 00:00:00 GMT-0000")); // Fri Jul 08 2005 02:00:00 GMT+0200</code>

지정된 시간대에 관계없이 모든 시도는 동일한 결과를 반환합니다.

해결 방법:

시간대 없이 날짜를 구문 분석하려면 다음 단계를 사용할 수 있습니다.

  1. 입력 문자열에서 새 Date 개체를 만듭니다.
  2. 사용자 시간 가져오기 시간대 오프셋.
  3. 날짜에서 시간대 오프셋을 뺍니다.
<code class="javascript">var date = new Date('2016-08-25T00:00:00')
var userTimezoneOffset = date.getTimezoneOffset() * 60000;
var parsedDate = new Date(date.getTime() + userTimezoneOffset);</code>

getTimezoneOffset() 함수는 양수 또는 음수 값을 반환합니다. 날짜가 정확하게 조정되었습니다.

위 내용은 시간대 없이 JavaScript에서 날짜를 구문 분석하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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