本文转自:https://blog.csdn.net/u010523770/article/details/49125609、https://www.cnblogs.com/newsouls/archive/2012/03/02/2377020.html
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); } |
JS中Date对象getYear()方法和getFullYear()方法区别
本文转自:
getYear()
使用getYear()函数的本意是获取年份,以2010年为例,如:Js代码
- var nowd = new Date();
- var yf = nowd.getYear();
在IE中是可以正确获取年份:2010,但是在FF等浏览器下则为:110。
原因则是 在 FF等浏览器内 getYear 返回的是 “当前年份-1900” 的值(即年份基数是1900)
而IE则是 当today的年份大于等于2000的时,直接将1900加上了,返回的 2010。
getFullYear()
使用getFullYear()在IE和FF中都可以正确获取年份:2010
注意
使用js来获取年份都使用:getFullYear()
评论