"该资源是一份JavaScript编程实例教程,适合初学者学习,主要涉及日期和星期的显示方法。"
在JavaScript编程中,日期和星期的显示是一个常见的需求,尤其是在创建动态网页或者处理用户界面交互时。这段代码展示了如何利用JavaScript内置的Date对象来获取当前日期和星期,并将其显示在网页上。以下是详细的解释:
1. **创建Date对象**:
`todayDate = new Date();` 这行代码创建了一个新的Date对象,它会自动获取当前系统的日期和时间。
2. **获取日期、月份和年份**:
- `date = todayDate.getDate();` 获取当前日期,返回的是1到31之间的整数。
- `month = todayDate.getMonth() + 1;` 获取当前月份,但JavaScript的getMonth()返回值是0到11,所以需要加1变为正常月份表示(1到12)。
- `year = todayDate.getYear();` 获取当前年份,但这个方法返回的是两位数,如19或20,对于21世纪以后的年份可能不准确。
3. **兼容不同浏览器**:
由于不同的浏览器可能对JavaScript的支持存在差异,代码中通过`navigator.appName`和`navigator.appVersion.indexOf("MSIE")`来检测浏览器类型,以便提供兼容的日期显示格式。
- 如果是Netscape浏览器,使用`document.write(1900 + year);`来确保显示四位数的年份。
- 如果是Internet Explorer浏览器,直接使用`document.write(year);`即可,因为IE能正确处理两位数和四位数的年份。
4. **显示星期**:
通过`todayDate.getDay()`可以获取当前日期是一周中的哪一天,返回值是0(周日)到6(周六)。然后根据这个返回值,使用一系列if语句来判断并输出对应的星期几。
5. **将日期和星期写入文档**:
使用`document.write()`方法将计算出的日期和星期写入HTML文档。注意,`<br>`标签用于换行,使输出更易读。
通过这段实例,初学者可以了解到JavaScript处理日期和星期的基本操作,以及如何进行浏览器兼容性编程。此外,这也可以作为基础,进一步学习更复杂的日期处理,例如格式化日期、计算日期差等。在实际开发中,通常会使用更强大的库如Moment.js或ES6的`Intl.DateTimeFormat`来进行更复杂的日期和时间操作。