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

Javascript
javascript事件问题
jquery tools 系列 scrollable学习
Javascript中的var_dump函数实现代码
javascript 获取select下拉列表值的代码
JS 网页彩蛋 实现代码
javascript 定义初始化数组函数
Javascript 阻止浏览器默认操作的实现代码
Javascript 检测、添加、移除样式(className)函数代码
Javascript String.replace的妙用
用 Javascript 验证表单(form)中多选框(checkbox)值
用 Javascript 验证表单(form)中的单选(radio)值
Javascript 获取滚动条位置等信息的函数
用Javascript 和 CSS 实现脚注(Footnote)效果
禁止JQuery中的load方法装载IE缓存中文件的方法
jquery 简单导航实现代码
JS 日期验证正则附asp日期格式化函数
javascript 一些用法小结
关于javascript 回调函数中变量作用域的讨论
一个简单的JavaScript 日期计算算法
javascript 基础简介 适合新手学习

Javascript 中的 FireFox的getYear的注意事项


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 289 ::
收藏到网摘: 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框中的相应代码看看效果。