>웹 프론트엔드 >JS 튜토리얼 >Safari의 JavaScript의 새로운 날짜 및 기타 날짜 기능에서 발생하는 함정

Safari의 JavaScript의 새로운 날짜 및 기타 날짜 기능에서 발생하는 함정

高洛峰
高洛峰원래의
2016-12-09 10:56:411254검색

최근 모바일 웹 작업을 할 때 PC에서는 크롬으로 디버깅을 성공했는데, 아이폰에서 테스트를 해보니 이상한 문제가 나타났습니다. 일련의 디버깅 끝에 날짜와 관련된 문제가 있음이 발견되었습니다. 처음에는 프로덕션 환경의 문제인 줄 알았으나, Mac 버전의 Safari로 로컬에서 디버깅할 때도 같은 문제가 발생했습니다. 몇 가지 정보를 참조한 후 JavaScript의 새로운 날짜 기능에 대한 Safari의 지원에 이상한 문제가 있음을 발견했습니다.

일반적으로 SQL에서는 날짜/시간 형식에 익숙하기 때문에 날짜는 yyyy-mm-dd 형식으로 표시됩니다. 그러나 Safari에서는 이 형식을 지원하지 않으므로 다음 문을 입력하면 null이 됩니다. 돌아온 시간.

new Date('2016-04-17');

Safari에서 지원하는 형식은 yyyy/mm/dd입니다. 주요 차이점은 대시와 슬래시 /에 있으며, 슬래시는 다음과 같습니다. 이 형식은 다른 일반 브라우저에서도 정상적으로 실행될 수 있으므로 슬래시로만 바꾸면 됩니다.

new Date('2016-04-17'.replace(/-/g, "/"));


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