版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、日期时间脚本库方法列表Dtotype.isLeapYear 判断闰年Dtotype.Format 日期格式化Dtotype.DateAdd 日期计算Dtotype.DateDiff 比较日期差Dtotype.toString 日期转字符串Dtotype.toArray 日期分割为数组Dtotype.DatePart 取日期的部分信息Dtotype.MaxDayOfDate 取日期所在月的最大天数Dtotype.WeekNumOfYear 判断日期所在年的第几周Strin
2、gToDate 字符串转日期型IsValidDate 验证日期有效性CheckDateTime 完整日期时间检查daysBetween 日期天数差js 代码 /- / 判断闰年 /- Dtotype.isLeapYear = function() return (0=this.getYear()%4&&(this.getYear()%100!=0)|(this.getYear()%400=0); /- / 日期格式化 / 格式 YYYY/yyyy/YY/yy 表示年份 / MM/M 月份 / W/w 星期 / dd/DD/d/D 日期 / hh/HH/h/H 时间
3、 / mm/m 分钟 / ss/SS/s/S 秒 /- Dtotype.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.getYea
4、r() % 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,Weekthis.getDay(); str=str.replace(/dd|DD/,this.getDate()>9?this.getDate().t
5、oString():'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():'
6、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; /+- /| 求两个时间的天数差 日期格式为 YYYY-MM-dd /+- function daysBetween(DateOne,Da
7、teTwo) var neMonth = DateOne.substring(5,DateOne.lastIndexOf ('-'); var neDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ('-')+1); var neYear = DateOne.substring(0,DateOne.indexOf ('-'); var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ('-'); var Two
8、Day = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ('-')+1); var TwoYear = DateTwo.substring(0,DateTwo.indexOf ('-'); var cha=(Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)- Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear)/86400000); return Math.abs(c
9、ha); /+- /| 日期计算 /+- Dtotype.DateAdd = function(strInterval, Number) var dtTmp = this; switch (strInterval) case 's' :return new Date(Date.parse(dtTmp) + (1000 * Number); case 'n' :return new Date(Date.parse(dtTmp) + (60000 * Number); case 'h' :return new Date(Date.par
10、se(dtTmp) + (3600000 * Number); case 'd' :return new Date(Date.parse(dtTmp) + (86400000 * Number); case 'w' :return new Date(Date.parse(dtTmp) + (86400000 * 7) * Number); case 'q' :return new Date(dtTmp.getFullYear(), (dtTmp.getMonth() + Number*3, dtTmp.getDate(), dtTmp.getHo
11、urs(), dtTmp.getMinutes(), dtTmp.getSeconds(); case 'm' :return new Date(dtTmp.getFullYear(), (dtTmp.getMonth() + Number, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds(); case 'y' :return new Date(dtTmp.getFullYear() + Number), dtTmp.getMonth(), dtTmp.getDat
12、e(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds(); /+- /| 比较日期差 dtEnd 格式为日期型或者 有效日期格式字符串 /+- Dtotype.DateDiff = function(strInterval, dtEnd) var dtStart = this; if (typeof dtEnd = 'string' )/如果是字符串转换为日期型 dtEnd = StringToDate(dtEnd); switch (strInterval) case 's' :r
13、eturn parseInt(dtEnd - dtStart) / 1000); case 'n' :return parseInt(dtEnd - dtStart) / 60000); case 'h' :return parseInt(dtEnd - dtStart) / 3600000); case 'd' :return parseInt(dtEnd - dtStart) / 86400000); case 'w' :return parseInt(dtEnd - dtStart) / (86400000 * 7); ca
14、se 'm' :return (dtEnd.getMonth()+1)+(dtEnd.getFullYear()-dtStart.getFullYear()*12) - (dtStart.getMonth()+1); case 'y' :return dtEnd.getFullYear() - dtStart.getFullYear(); /+- /| 日期输出字符串,重载了系统的toString方法 /+- Dtotype.toString = function(showWeek) var myDate= this; var str = myDa
15、te.toLocaleDateString(); if (showWeek) var Week = '日','一','二','三','四','五','六' str += ' 星期' + WeekmyDate.getDay(); return str; /+- /| 日期合法性验证 /| 格式为:YYYY-MM-DD或YYYY/MM/DD /+- function IsValidDate(DateStr) var sDate=DateStr.replace(/(s+|s
16、+$)/g,''); /去两边空格; if(sDate='') return true; /如果格式满足YYYY-(/)MM-(/)DD或YYYY-(/)M-(/)DD或YYYY-(/)M-(/)D或YYYY-(/)MM-(/)D就替换为'' /数据库中,合法日期可以是:YYYY-MM/DD(2003-3/21),数据库会自动转换为YYYY-MM-DD格式 var s = sDate.replace(/d 4,4 -/ 1 d 1,2 -/ 1 d 1,2 /g,''); if (s='') /说明格式满足YYYY
17、-MM-DD或YYYY-M-DD或YYYY-M-D或YYYY-MM-D var t=new Date(sDate.replace(/-/g,'/'); var ar = sDate.split(/-/:/); if(ar0 != t.getYear() | ar1 != t.getMonth()+1 | ar2 != t.getDate() /alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。'); return false; else /alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM
18、/DD。注意闰年。'); return false; return true; /+- /| 日期时间检查 /| 格式为:YYYY-MM-DD HH:MM:SS /+- function CheckDateTime(str) var reg = /(d+)-(d 1,2 )-(d 1,2 ) (d 1,2 ):(d 1,2 ):(d 1,2 )$/; var r = str.match(reg); if(r=null)return false; r2=r2-1; var d= new Date(r1,r2,r3,r4,r5,r6); if(d.getFullYear()!=r1)ret
19、urn false; if(d.getMonth()!=r2)return false; if(d.getDate()!=r3)return false; if(d.getHours()!=r4)return false; if(d.getMinutes()!=r5)return false; if(d.getSeconds()!=r6)return false; return true; /+- /| 把日期分割成数组 /+- Dtotype.toArray = function() var myDate = this; var myArray = Array(); myArr
20、ay0 = myDate.getFullYear(); myArray1 = myDate.getMonth(); myArray2 = myDate.getDate(); myArray3 = myDate.getHours(); myArray4 = myDate.getMinutes(); myArray5 = myDate.getSeconds(); return myArray; /+- /| 取得日期数据信息 /| 参数 interval 表示数据类型 /| y 年 m月 d日 w星期 ww周 h时 n分 s秒 /+- Dtotype.DatePart = funct
21、ion(interval) var myDate = this; var partStr='' var Week = '日','一','二','三','四','五','六' switch (interval) case 'y' :partStr = myDate.getFullYear();break; case 'm' :partStr = myDate.getMonth()+1;break; case 'd' :pa
22、rtStr = myDate.getDate();break; case 'w' :partStr = WeekmyDate.getDay();break; case 'ww' :partStr = myDate.WeekNumOfYear();break; case 'h' :partStr = myDate.getHours();break; case 'n' :partStr = myDate.getMinutes();break; case 's' :partStr = myDate.getSeconds(
23、);break; return partStr; /+- /| 取得当前日期所在月的最大天数 /+- Dtotype.MaxDayOfDate = function() var myDate = this; var ary = myDate.toArray(); var date1 = (new Date(ary0,ary1+1,1); var date2 = date1.dateAdd(1,'m',1); var result = dateDiff(date1.Format('yyyy-MM-dd'),date2.Format('yyyy-MM-dd'); return result; /+- /| 取得当前日期所在周是一年中的第几周 /+- Dtotype
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- (正式版)DB37∕T 2959-2017 《甲砜霉素粉添加磺胺二甲嘧啶的测定 高效液相色谱法》
- 母婴保健技术服务管理制度
- 安全施工方案:确保施工组织与专项安全
- 安徽省阜阳市十校联考2026届初三5月联合模拟英语试题含解析
- 山西省忻州市定襄县市级名校2026届初三物理试题第18周复习试题含解析
- 安徽省桐城市黄岗市级名校2025-2026学年初三月考(5)语文试题含解析
- 甘肃省会师中学2025-2026学年初三下学期七校联合交流英语试题含解析
- 广西2026年初三下-第三学段考试语文试题试卷含解析
- 2026年扬州中学教育集团初三模拟考试英语试题试卷含解析
- 儿童哮喘护理中的心理疏导
- 中信证券在线测评题
- 融媒体语境下河南卫视文化节目品牌建设浅析
- Supplier-Audit-Check-List半导体芯片制造企业供应商审核清单
- 电机轴承知识与润滑知识
- 高考生物选择性必修1稳态与调节基础知识填空默写(每天打卡)
- DL-T5461.1-2012火力发电厂施工图设计文件内容深度规定第1部分:总的部分
- DL-T976-2017带电作业工具、装置和设备预防性试验规程
- 2024小升初语文复习 名著阅读《三国演义》(知识点+练习)学生版+解析版 (二)
- 2023年清远市连南瑶族自治县赴高校招聘教师考试真题及答案
- 人教版七年级上册全册音乐知识点复习
- 故事绘本小机械立大功
评论
0/150
提交评论