firefox 与IE 对 js获取当前年份的兼容问题
通过年份查找数据的需求,这个功能实现起来比较简单
js代码如下:
- var myDate = new Date();
var year=myDate.getYear();
year=year+"年";
alert(year);
$("#selectYear").val(year);
数据的样式变成这样的了,我希望得到的数据时 “02文书文件--2016”这样的但是在firefox却是如上图。
经过查询资料发现造成该原因是 javascript 的兼容性问题
var today = new date();
var year = today.getYear();
在 Firefox 里面 getYear 返回的是 "当前年份-1900" 的值 (以前都如此)
而IE却做了一个改动:
当today的年份大于等于2000的时候 直接把1900加上了 返回的 200X (而不是10X)
如:today年份是1999 返回99
today年份是2000 返回2000
所以在IE下显示就正常了,修改也简单就是需要加一个判断。
javascript getyear一个简单的解决是加一个判断:
year = (year<1900?(1900+year):year);
最后代码如下:
- var myDate = new Date();
var year=myDate.getYear();
year = (year<1900?(1900+year):year);
year=year+"年";
alert(year);
$("#selectYear").val(year);
最后在firefox显示正常了: