一般情况下,我们获取年份的时候都是通过下面的代码:
var now = new Date();
var initYear = now.getYear();
以上代码在IE中initYear是对的,但是ff以及chrome下不兼容,换成
var initYear = now.getFullYear();
IE、FireFox、Chrome下均可行
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);
}
本文原创发布php中文网,转载请注明出处,感谢您的尊重!