经常用到的javascript日期函数库啊

### JavaScript 日期函数库知识点详解 #### 一、引言 在JavaScript开发中,处理日期时间是一项常见的需求。为了简化这一过程,许多开发者选择利用自定义的日期函数库或者现有的第三方库来完成复杂的日期时间操作。本文将详细介绍一个实用的JavaScript日期函数库,包括其核心功能及使用方法。 #### 二、核心功能 根据提供的部分代码片段,我们可以总结出该日期函数库的核心功能如下: 1. **isLeapYear**:判断当前日期是否为闰年。 2. **Format**:格式化日期。 3. **DateAdd**:添加指定的时间量(如天数)到当前日期。 4. **DateDiff**:计算两个日期之间的差值。 5. **toString**:将日期转换为字符串。 6. **toArray**:将日期转换为数组形式。 7. **DatePart**:获取日期的特定部分(如月份)。 8. **MaxDayOfDate**:获取当月最大天数。 9. **WeekNumOfYear**:获取一年中的第几周。 10. **StringToDate**:将字符串转换为日期对象。 11. **IsValidDate**:验证日期的有效性。 12. **CheckDateTime**:检查日期时间的有效性。 13. **daysBetween**:计算两个日期之间的天数差。 接下来,我们将对这些功能进行详细说明。 #### 三、功能详解 ##### 1. isLeapYear —— 判断是否为闰年 ```javascript Date.prototype.isLeapYear = function () { return (0 == this.getYear() % 4 && ((this.getYear() % 100 != 0) || (this.getYear() % 400 == 0))); }; ``` 此方法用于判断给定的日期是否为闰年。根据闰年的定义,如果年份能够被4整除但不能被100整除,或者是能够被400整除,则该年为闰年。此方法返回一个布尔值,如果是闰年则返回true,否则返回false。 ##### 2. Format —— 日期格式化 ```javascript Date.prototype.Format = function (formatStr) { // ... }; ``` `Format` 方法允许用户按照指定的格式字符串来格式化日期。例如,如果希望日期显示为“YYYY-MM-DD”的格式,则可以使用 `"yyyy-MM-dd"` 作为参数传入。此方法支持多种占位符,如 `yyyy` 表示四位年份,`MM` 表示两位月份等。 ##### 3. DateAdd —— 添加时间 尽管提供的代码片段中没有具体的实现细节,但通常 `DateAdd` 方法用来向当前日期添加一定的时间量。例如,可以增加天数、小时数或分钟数等。 ##### 4. DateDiff —— 计算日期差 同样地,`DateDiff` 方法也没有给出具体实现,但它的作用是计算两个日期之间的差值。这通常用于确定两个事件之间相隔多少天、小时等。 ##### 5. toString —— 转换为字符串 将日期对象转换为字符串表示形式,便于在页面上显示或其他文本处理任务。 ##### 6. toArray —— 转换为数组 将日期对象的各个组成部分(年、月、日等)提取出来并存储在一个数组中,方便后续处理。 ##### 7. DatePart —— 获取日期特定部分 此方法用于获取日期的某个特定部分,例如月份、日期等。 ##### 8. MaxDayOfDate —— 获取当月最大天数 此方法返回当前日期所在月份的最大天数,对于非闰年的二月来说,结果是28;而对于闰年的二月,则为29。 ##### 9. WeekNumOfYear —— 获取一年中的第几周 此方法返回当前日期是一年中的第几周。 ##### 10. StringToDate —— 字符串转日期 将符合特定格式的字符串转换为日期对象。 ##### 11. IsValidDate —— 验证日期有效性 检查给定的日期字符串是否有效,并返回相应的布尔值。 ##### 12. CheckDateTime —— 检查日期时间有效性 此方法不仅检查日期是否有效,还检查时间部分是否有效。 ##### 13. daysBetween —— 计算两个日期之间的天数差 此方法用于计算两个日期之间的天数差。通过比较两个日期字符串,得出它们之间相差的天数。 #### 四、使用示例 假设我们想要使用 `isLeapYear` 方法判断一个日期是否为闰年: ```javascript var today = new Date(); if (today.isLeapYear()) { console.log("Today's year is a leap year."); } else { console.log("Today's year is not a leap year."); } ``` #### 五、小结 以上就是这个JavaScript日期函数库的主要功能及其使用方法的介绍。这些功能覆盖了日常开发中常见的日期时间处理需求,通过使用这些方法,可以大大简化代码并提高开发效率。





















Date.prototype.Format 日期格式化
Date.prototype.DateAdd 日期计算
Date.prototype.DateDiff 比较日期差
Date.prototype.toString 日期转字符串
Date.prototype.toArray 日期分割为数组
Date.prototype.DatePart 取日期的部分信息
Date.prototype.MaxDayOfDate 取日期所在月的最大天数
Date.prototype.WeekNumOfYear 判断日期所在年的第几周
StringToDate 字符串转日期型
IsValidDate 验证日期有效性
CheckDateTime 完整日期时间检查
daysBetween 日期天数差
js 代码
//---------------------------------------------------
// 判断闰年
//---------------------------------------------------
Date.prototype.isLeapYear = function()
{
return (0==this.getYear()%4&&((this.getYear()%100!=0)||(this.getYear()%400==0)));
}
//---------------------------------------------------
// 日期格式化
// 格式 YYYY/yyyy/YY/yy 表示年份
// MM/M 月份
// W/w 星期
// hh/HH/h/H 时间
// mm/m 分钟
// ss/SS/s/S 秒
//---------------------------------------------------
Date.prototype.Format = function(formatStr)
{
var str = formatStr;
var Week = ['日','一','二','三','四','五','六'];
str=str.replace(/yyyy|YYYY/,this.getFullYear());
str=str.replace(/yy|YY/,(this.getYear() % 100)>9?(this.getYear() % 100).toString():'0' + (this.getYear() % 100));
str=str.replace(/MM/,this.getMonth()>9?this.getMonth().toString():'0' + this.getMonth());
str=str.replace(/M/g,this.getMonth());
str=str.replace(/w|W/g,Week[this.getDay()]);
str=str.replace(/dd|DD/,this.getDate()>9?this.getDate().toString():'0' + this.getDate());
str=str.replace(/d|D/g,this.getDate());
str=str.replace(/hh|HH/,this.getHours()>9?this.getHours().toString():'0' + this.getHours());
str=str.replace(/h|H/g,this.getHours());
str=str.replace(/mm/,this.getMinutes()>9?this.getMinutes().toString():'0' + this.getMinutes());
str=str.replace(/m/g,this.getMinutes());
str=str.replace(/ss|SS/,this.getSeconds()>9?this.getSeconds().toString():'0' + this.getSeconds());
str=str.replace(/s|S/g,this.getSeconds());
return str;
剩余8页未读,继续阅读

- 薄樱猫猫2013-07-17自己修改一下就可以用了。谢谢
- 低调的资深精英攻城狮2013-04-27好东西, 不过有个重要函数有bug, 自己改了一轮, 很好用阿
- hi1104092011-10-10这个东西可真是帮了我的大忙了,只是有一点不好,这个类库的大部分函数都是修改原对象而不是返回新对象

- 粉丝: 8
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 《CC++程序设计》练习题.doc
- 软件外包商业计划书.doc
- 项目管理多选题样本.doc
- 服务器虚拟化技术方案.docx
- 计算机辅助设计复习思考题1.pdf
- 综合布线系统的施工方案.pptx
- 门锁软件使用说明书V.doc
- 南京工业大学 2023-2024 学年程序语言设计(Python 程序设计)部分作业及考试
- 2023年江苏成人计算机统考试题操作题成人大专计算机考试试题模拟试题.doc
- 技术xbee模块及其在楼宇自动化系统中.doc
- 医院网络咨询医生培训教程精华(非原创).pptx
- 基于51单片机的直流双闭环调速系统设计.doc
- 计算机科学与技术专业模拟试题(最终).doc
- 哈工程网络安全实验实验报告.doc
- 单片机项目结题报告之流水灯.docx
- 中央企业开展网络安全工作的策略与方法.pptx


