iPod用お風呂スピーカーとドアストッパー 書籍『jQuery ポケットリファレンス』
6月 29

仕事で他の人が書いたWebアプリケーションプログラムのバグ修正をしています。
その中で、IEで画面を見ると現在の年が「3910年」と表示されているバグがありました。

JavaScript の

Date().getYear()

は現在の年を返すメソッドですが、ブラウザによって返す値が違います。
現在の各主要ブラウザの最新版のバージョンでは、IE、Operaでは 2010 を返し、Firefox、Safari、Chromeでは 110(=2010-1900) を返します。

対処法としては

var year = new Date().getYear()
if(year < 1900){
year += 1900;
}

とする方法もありますが、単に

Date().getFullYear()

を使うことで確実に4桁の年を取得できます。
getFullYear() は大昔のIEやNNでは使用できないそうですが、現在では気にする必要はないでしょう。

Leave a Reply

You must be logged in to post a comment.

preload preload preload