JS中getYear()的兼容问题

 

用下面这段JavaScript来输出时间,FF和IE得到的结果居然不同……
var myDate  = new Date();
var myYears = myDate.getYear();
document.write(myYears);
// 108 on FF and 2008 on IE
查了下,原来JavaScript本来输出的就是108,而IE程序员考虑到不可能是1900年以前,所以直接给加上了。真佩服IE的超强兼容性啊。
解决方法:
由于现在已经是2008年了,所以直接加上1900。
一段通吃的代码:
var myDate  = new Date();
var myYears = ( myDate.getYear() < 1900 ) ? ( 1900 + myDate.getYear() ) : myDate.getYear();
document.write(myYears);
// Both FF and IE echo 2008

在ie7下能正常显示时间为2010,但在ie9下,则显示为110.

posted @ 2010-11-30 13:05  chinaifne  阅读(3960)  评论(1编辑  收藏  举报