当前位置: 首页 > 图文教程 > 网络编程 > Javascript > FireFox的getYear的注意事项

Javascript
扩展String功能方法
如何实现JS函数的重载
兼容低版本IE的JScript5.5实现
prototype.js的Ajax对象
Valerio 发布了 Mootools
理解JavaScript中的事件
Popup对象实现右键菜单
HTML DOM Viewer
页面内查找
浅谈JavaScript中面向对象技术的模拟
初学prototype,发个JS接受URL参数的代码
关于Blog顶部的滚动导航条代码
静态页面的值传递(三部曲)
[原创]防止网站内容被小偷采集的js代码
在线游戏大家来找茬II
图片预载入
滚动经典最新话题[prototype框架]下编写
一个对于Array的简单扩展
Array对象方法参考
为数据添加append,remove功能

Javascript 中的 FireFox的getYear的注意事项


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 147 ::
收藏到网摘: n/a

上个礼拜在整理以前写的一个日历脚本,FF下对年显示的总是有问题,搞了郁闷s。例如如下脚本:在IE下提示“2007”——没有问题!可是在FF下却提示“107”?
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

Google了一下,才明白在FF的getYear返回的是“当前年份-1900”的值(传说以前一直这样处理),而NB的MS却当Year>=2000,直接把减去的1900又加回来了。呵呵,再次佩服IE的容错能力和肚量^_^
最直接的解决办法是 year = (year < 1900) ? (1900 + year) : year;
当然你要判断Browser类型再分类处理也没有问题。
最合理的是将getYear用getFullYear或者getUTCFullYear去调用,你可以改变上面Code框中的相应代码看看效果。