JavaScript Date 객체의 기묘한 익살: 하루 쉬는 것이 당연할 때
JavaScript에서 Date 객체는 당황스러울 수 있습니다. 문자열을 변환할 때의 동작입니다. 겉보기에 무해해 보이는 날짜 형식인 "2011-09-24"를 고려해 보세요.
Date 생성자에 인수로 전달되는 경우:
var date = new Date("2011-09-24");
결과가 예상과 다를 수 있습니다. 개체는 2011년 9월 24일을 나타내는 대신 하루 전 날짜를 기록합니다.
console.log(date); // Fri Sep 23 2011 20:00:00 GMT-0400 (Eastern Daylight Time)
The Array of "Crazy" Occurrences
이 불일치는 일련의 혼란 속에서 빙산의 일각 동작:
비하인드 스토리 이해
이러한 단점은 복잡한 내부 메커니즘에서 비롯됩니다. 날짜 객체. 문자열을 변환할 때 개체는 현재 로케일 및 시간대 설정을 기반으로 문자열을 해석하려고 시도합니다. 이 프로세스에서는 미묘하고 예상치 못한 변형이 발생할 수 있습니다.
실용적인 솔루션
이러한 함정을 피하려면 다음 기술을 고려하십시오.
이러한 기이함을 이해하면 JavaScript Date 개체의 복잡성을 자신있게 탐색할 수 있습니다. 이러한 특성은 때때로 비논리적으로 보일 수 있지만 도구의 필수적인 부분이며 올바른 지식을 통해 이점을 활용할 수 있다는 점을 기억하십시오.
위 내용은 JavaScript의 `Date` 객체가 때때로 날짜를 잘못 표시하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!