var date = new Date('2016-12-6 11:11:11'); document.write(date);
최근에는 고정 문자열 시간을 타임스탬프로 변환하여 비교해야 하는 시간 판단 스크립트를 작성하고 있습니다. 이 작업을 수행할 때 기본적으로 코드가 완성된 후에는 디버깅 도구로 크롬을 사용하는 데 익숙합니다. , 모든 것이 정상입니다. 다른 브라우저를 사용하여 액세스하세요. IE와 Safari는 호환되지 않으며 "잘못된 날짜" 오류를 반환합니다.
문자열 형식에 문제가 있는 것 같아 '2016/11/11 11:11:11'로 변경하고 다시 테스트해 보니 정상적으로 나오네요. , 그래서 모바일 브라우저를 사용하여 계속 방문했습니다. Android는 정상이고 iPhone은 계속 오류를 보고합니다.
그런 다음 "Nov 11 2016 11:11:11"을 변경해도 오류가 계속 보고됩니다. 변경했는데 작동하지 않습니다
고민 끝에 마침내 포럼에서 읽었습니다. 우리는 다음과 같은 해결책에 도달했습니다:
var arr = "2016/11/11 11:11:11".split(/[- : \/]/), date = new Date(arr[0], arr[1]-1, arr[2], arr[3], arr[4], arr[5]); document.write(date);
드디어 모든 브라우저와 호환됩니다. 결론:
iPhone의 Safari는 YYYY-MM-DD HH:mm:ss 또는 YYYY/MM/DD HH:mm과 같은 시간 형식을 설명할 수 없습니다. :ss 및 Google Firefox와 같은 브라우저는 이 형식을 확장했습니다.
iPhone의 Safari 지원되는 형식은 YYYY, MM, DD, HH, mm, ss입니다. 정말 애플의 프로그래머들을 끌어내서 10분 동안 촬영하고 싶었습니다. 그들은 정말 독특했습니다. 귀찮다