oday.getYear()函数在IE内核浏览器下显示正常,譬如2016,但在chrome,firefox显示的却是116年。

原因就是 javascript 的兼容性问题:

var today = new date();

var year = today.getYear();

在 Firefox 里面 getYear 返回的是 "当前年份-1900" 的值 (以前都如此)

而微软很NB的做了一个改动:

当today的年份大于等于2000的时候 直接把1900加上了 返回的 200X (而不是10X)

如:today年份是1999 返回99

today年份是2000 返回2000

一个简单的解决是加一个判断:

year = (year<1900?(1900+year):year);

或者

year = (today.getYear() < 1900) ? (1900 + today.getYear()) : today.getYear();

也有另外的方法

通过 getFullYear getUTCFullYear 去调用

var year = today.getFullYear();