요즘 제가 하고 있는 프로젝트에서 ie11과의 호환을 위한 수정작업을 하고 있습니다.
그런데, 자바스크립트에서 년도를 가져오기 위해 사용하는 getYear()라는 메소드가 ie11에서는 대부분 에러를 발생하고 있습니다.
해결 방법을 알아본즉,,,
1,900년을 0을 기준으로 1901년은 1을, 1899년은 -1을 return합니다.
즉, getYear()가 제대로 된 값을 가지고 오지 못합니다.
즉, getYear()가 제대로 된 값을 가지고 오지 못합니다.
* 해결 방법
getYear() ==> getFullYear() 로 바꾸면 됩니다.
그래서, 왜 이제까지는 getYear()를 사용해도 문제가 없었는데 ie11에서만 getYear()에서 문제가 발생하는지 알아보았더니 지금까지 ie에서만 사용되던 함수이고, 다른 브라우저에서는 여전히 문제가 되고 있었던 함수라는 걸 알게 되었습니다. 이번에 ie11에서 호환성을 강화하다보니 에러가 발생했던 거구요.
http://www.w3schools.com/jsref/jsref_obj_date.asp
이곳에서도 getYear() 함수는 더이상 사용하지 않으니 getFullYear()를 사용하라고 가이드하고 있네요.
익스플로러 이외의 브라우저 비율이 꾸준히 늘어나고 있고,
ie11부터는 웹표준이 강화되고 있기 때문에 웹디자인이나 웹퍼블리셔, 웹프로그래머 분들은 앞으로 더욱 더 호환성 문제에 신경쓸 수 밖에 없을 것 같네요.
'프로그래밍 언어 > 자바스크립트' 카테고리의 다른 글
[자바스크립트] javascript 내부함수를 탈출시키는 방법2 (더 좋은 방법) (0) | 2014.12.05 |
---|---|
[자바스크립트] javascript 내부함수를 탈출시키는 방법1 (0) | 2014.12.05 |
[자바스크립트] javascript 내부함수를 표현해보는 아주 간단한 예제 (0) | 2014.12.05 |
[자바스크립트] javascript로 구현하는 base64 인코딩, 디코딩 함수 (3) | 2014.12.04 |
[자바스크립트] js 파일 호출시 한글이 깨져서 보이는 문제 (파일 인코딩) (0) | 2014.11.07 |
댓글