日期錯亂?! – JavaScript 開發

  • 1754
  • 0
  • 2012-05-28

原先的 JavaScript 在 IE 運作一切正常, 但在 FireFox 下, 出現 112 ?!

下列 JavaScript 在 IE 運作一切正常

myDate = new Date();
year = myDate.getYear();
alert(year);

在IE下, 正確出現 2012 年

image

在 FireFox 下,  出現 112 ?!

image

Chrome 淪限了

image

 

Safri 也是

image

上Google神廟求解, 好不容易求得聖籤 => Why does Javascript getYear() return 108?

原來這是個Y2K的問題

目前 getYear() 在 ECMAScript 第3版中已由 getFullYear() 所取代。

而 IE 採取 getYear() ,getFullYear() 可以兼容,所以使用getYear()可取得完整年份,而Mozilla則仍保持標準的行為模式。

為求統一, 所以請將 getYear() 變更為 getFullYear()