JS中getYear()和getFullYear()区别分析


js中得到当前年份做法是var dayObj=new Date(); dayObj.getYear()来得到年份,我前面写过这样会出现浏览器的兼容性的问题,就是在IE中能得到我们想要的结果但是在FF中就不行了,和我们要的结果相差1900年 。当时我的做法是:

var dayObj=new Date();
var myYears = ( dayObj.getYear() < 1900 ) ? ( 1900 + dayObj.getYear() ) : dayObj.getYear();
document.write(myYears);

这样就能避免IE和FF的兼容性问题了 。

现在我看到js中有这样个方法getFullYear() 。进行测试来一下,原来这个方法就能避免上面出的问题,IE和FF都能按我们想的来显示 。

getFullYear 方法
返回 Date 对象中用本地时间表示的年份值 。

dateObj.getFullYear()

必选项 dateObj 参数为 Date 对象 。

说明
要获取用全球标准时间 (UTC)表示的年份值,请使用 getUTCFullYear 方法 。

getFullYear 方法以绝对数字的形式返回年份值 。例如,1976 年的返回值就是 1976 。这样可以避免出现 2000 年问题,从而不会将 2000 年1月1日以后的日期与 1900 年1月1日以后的日期混淆起来 。

下面这个例子说明了 GetFullYear 方法的用法 。

function DateDemo(){  
var d, s = "今天 UTC 日期是: ";  
d = new Date();  
s += (d.getMonth() + 1) + "/";  
s += d.getDate() + "/";  
s += d.getFullYear();  
return(s);
}