4 Javascript实例教程 探测浏览器插件( 二 )


Year(年份)
Navigator浏览器
IE 3.x浏览器
IE 4.x浏览器

1998
98
98
98

1999
99
99
99

2000
2000
100
2000

2001
2001
101
2001


你可以从上面表格中发现最新的浏览器支持1999年之后四位的年份格式(如2000、2001) 。不幸的是,老的浏览器处理年份的格式的时候给程序设计人员无尽的困惑 。我经常使用的具体解决方法如下所示,与大家共享:
var thisYear = (new Date()).getYear();
thisYear = 1900(thisYear % 1900);
这里(thisYear % 1900)作用是将年份转换位IE 3.x格式并且增加1900以得到真实的年份(比如,2002年经过this Year00转换位IE 3.x格式位102,然后102再加上1900得到2002) 。上面这两条语句可以适用于从1900年到3799年的处理,现在看起来这么长的时间是足够使用了 。但是,为了避免类似于“千年虫”问题,我们应该再找出更好的解决方案,在本教程中就不给出了 。另外,新的ECMA标准包括了一个名为getFullYear()的函数,它是返回完整的年份格式,但是这个函数只能被Navigator 4支持,在IE中是不能使用的 。
最后对程序再做一点改进,我们可以修改People构造器以转换年份为YYYY格式,具体代码如下:
this.birthYear = 1900(((new Date()).getYear() - this.age) % 1900);
在JavaScript中使用对象的能力通常被许多程序设计人员所忽视 。但是从本教程中,你应该可以看到使用对象可以使程序员设计出功能更强大的应用程序来的 。




推荐阅读