现在的位置: 首页 > 综合 > 正文

JS中getYear()的兼容问题 实习IE火狐均正常

2017年12月20日 ⁄ 综合 ⁄ 共 382字 ⁄ 字号 评论关闭

用下面这段JavaScript来输出时间,FF和IE得到的结果居然不同……

var myDate  = new Date();
var
myYears = myDate.getYear();
document.write(myYears);

火狐下弹出:110 而IE中弹出2010

 

查了下,原来JavaScript本来输出的就是110,而IE程序员考虑到不可能是1900年以前,所以直接给加上了。

解决方法:


 
一段通吃的代码:

var
myDate  = new Date();
var myYears = ( myDate.getYear() < 1900 ) ? ( 1900 +
myDate.getYear() ) : myDate.getYear();



document.write(myYears);

 

补充:在对时间进行格式化的时候 建议先转化成字符串 尤其要实现这种格式的20100918 (year.toString() )

抱歉!评论已关闭.