JS中getYear()的兼容问题

原文地址:http://zhengdl126.javaeye.com/blog/417703

用下面这段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

发表评论

电子邮件地址不会被公开。 必填项已用*标注