这里会显示出您选择的修订版和当前版本之间的差别。
后一修订版 | 前一修订版 | ||
无三方插件临时取本地日期时间 [2018/12/21 11:02] – 创建 Aven | 无三方插件临时取本地日期时间 [2024/01/22 11:09] (当前版本) – 外部编辑 127.0.0.1 | ||
---|---|---|---|
行 22: | 行 22: | ||
var mytime=myDate.toLocaleTimeString(); | var mytime=myDate.toLocaleTimeString(); | ||
myDate.toLocaleString( ); // | myDate.toLocaleString( ); // | ||
+ | |||
+ | Date.prototype.isLeapYear 判断闰年 | ||
+ | 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&& | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | // 日期格式化 | ||
+ | // 格式 YYYY/ | ||
+ | // MM/M 月份 | ||
+ | // W/w 星期 | ||
+ | // dd/DD/d/D 日期 | ||
+ | // hh/HH/h/H 时间 | ||
+ | // mm/m 分钟 | ||
+ | // ss/SS/s/S 秒 | ||
+ | // | ||
+ | Date.prototype.Format = function(formatStr) | ||
+ | { | ||
+ | var str = formatStr; | ||
+ | var Week = [' | ||
+ | | ||
+ | str=str.replace(/ | ||
+ | str=str.replace(/ | ||
+ | | ||
+ | str=str.replace(/ | ||
+ | str=str.replace(/ | ||
+ | | ||
+ | str=str.replace(/ | ||
+ | | ||
+ | str=str.replace(/ | ||
+ | str=str.replace(/ | ||
+ | | ||
+ | str=str.replace(/ | ||
+ | str=str.replace(/ | ||
+ | str=str.replace(/ | ||
+ | str=str.replace(/ | ||
+ | | ||
+ | str=str.replace(/ | ||
+ | str=str.replace(/ | ||
+ | | ||
+ | return str; | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | //| 求两个时间的天数差 日期格式为 YYYY-MM-dd | ||
+ | // | ||
+ | function daysBetween(DateOne, | ||
+ | { | ||
+ | var OneMonth = DateOne.substring(5, | ||
+ | var OneDay = DateOne.substring(DateOne.length, | ||
+ | var OneYear = DateOne.substring(0, | ||
+ | | ||
+ | var TwoMonth = DateTwo.substring(5, | ||
+ | var TwoDay = DateTwo.substring(DateTwo.length, | ||
+ | var TwoYear = DateTwo.substring(0, | ||
+ | | ||
+ | var cha=((Date.parse(OneMonth+'/' | ||
+ | return Math.abs(cha); | ||
+ | } | ||
+ | | ||
+ | | ||
+ | // | ||
+ | //| 日期计算 | ||
+ | // | ||
+ | Date.prototype.DateAdd = function(strInterval, | ||
+ | var dtTmp = this; | ||
+ | switch (strInterval) { | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | } | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | //| 比较日期差 dtEnd 格式为日期型或者有效日期格式字符串 | ||
+ | // | ||
+ | Date.prototype.DateDiff = function(strInterval, | ||
+ | var dtStart = this; | ||
+ | if (typeof dtEnd == ' | ||
+ | { | ||
+ | dtEnd = StringToDate(dtEnd); | ||
+ | } | ||
+ | switch (strInterval) { | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | } | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | //| 日期输出字符串,重载了系统的toString方法 | ||
+ | // | ||
+ | Date.prototype.toString = function(showWeek) | ||
+ | { | ||
+ | var myDate= this; | ||
+ | var str = myDate.toLocaleDateString(); | ||
+ | if (showWeek) | ||
+ | { | ||
+ | var Week = [' | ||
+ | str += ' 星期' | ||
+ | } | ||
+ | return str; | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | //| 日期合法性验证 | ||
+ | //| 格式为:YYYY-MM-DD或YYYY/ | ||
+ | // | ||
+ | function IsValidDate(DateStr) | ||
+ | { | ||
+ | var sDate=DateStr.replace(/ | ||
+ | if(sDate=='' | ||
+ | // | ||
+ | // | ||
+ | var s = sDate.replace(/ | ||
+ | if (s=='' | ||
+ | { | ||
+ | var t=new Date(sDate.replace(/ | ||
+ | var ar = sDate.split(/ | ||
+ | if(ar[0] != t.getYear() || ar[1] != t.getMonth()+1 || ar[2] != t.getDate()) | ||
+ | { | ||
+ | // | ||
+ | return false; | ||
+ | } | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | // | ||
+ | return false; | ||
+ | } | ||
+ | return true; | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | //| 日期时间检查 | ||
+ | //| 格式为:YYYY-MM-DD HH: | ||
+ | // | ||
+ | function CheckDateTime(str) | ||
+ | { | ||
+ | var reg = / | ||
+ | var r = str.match(reg); | ||
+ | if(r==null)return false; | ||
+ | r[2]=r[2]-1; | ||
+ | var d= new Date(r[1], | ||
+ | if(d.getFullYear()!=r[1])return false; | ||
+ | if(d.getMonth()!=r[2])return false; | ||
+ | if(d.getDate()!=r[3])return false; | ||
+ | if(d.getHours()!=r[4])return false; | ||
+ | if(d.getMinutes()!=r[5])return false; | ||
+ | if(d.getSeconds()!=r[6])return false; | ||
+ | return true; | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | //| 把日期分割成数组 | ||
+ | // | ||
+ | Date.prototype.toArray = function() | ||
+ | { | ||
+ | var myDate = this; | ||
+ | var myArray = Array(); | ||
+ | myArray[0] = myDate.getFullYear(); | ||
+ | myArray[1] = myDate.getMonth(); | ||
+ | myArray[2] = myDate.getDate(); | ||
+ | myArray[3] = myDate.getHours(); | ||
+ | myArray[4] = myDate.getMinutes(); | ||
+ | myArray[5] = myDate.getSeconds(); | ||
+ | return myArray; | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | //| 取得日期数据信息 | ||
+ | //| 参数 interval 表示数据类型 | ||
+ | //| y 年 m月 d日 w星期 ww周 h时 n分 s秒 | ||
+ | // | ||
+ | Date.prototype.DatePart = function(interval) | ||
+ | { | ||
+ | var myDate = this; | ||
+ | var partStr=''; | ||
+ | var Week = [' | ||
+ | switch (interval) | ||
+ | { | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | case ' | ||
+ | } | ||
+ | return partStr; | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | //| 取得当前日期所在月的最大天数 | ||
+ | // | ||
+ | Date.prototype.MaxDayOfDate = function() | ||
+ | { | ||
+ | var myDate = this; | ||
+ | var ary = myDate.toArray(); | ||
+ | var date1 = (new Date(ary[0], | ||
+ | var date2 = date1.dateAdd(1,' | ||
+ | var result = dateDiff(date1.Format(' | ||
+ | return result; | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | //| 取得当前日期所在周是一年中的第几周 | ||
+ | // | ||
+ | Date.prototype.WeekNumOfYear = function() | ||
+ | { | ||
+ | var myDate = this; | ||
+ | var ary = myDate.toArray(); | ||
+ | var year = ary[0]; | ||
+ | var month = ary[1]+1; | ||
+ | var day = ary[2]; | ||
+ | document.write('< | ||
+ | document.write(' | ||
+ | document.write(' | ||
+ | document.write(' | ||
+ | return result; | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | //| 字符串转成日期类型 | ||
+ | //| 格式 MM/dd/YYYY MM-dd-YYYY YYYY/MM/dd YYYY-MM-dd | ||
+ | // | ||
+ | function StringToDate(DateStr) | ||
+ | { | ||
+ | | ||
+ | var converted = Date.parse(DateStr); | ||
+ | var myDate = new Date(converted); | ||
+ | if (isNaN(myDate)) | ||
+ | { | ||
+ | //var delimCahar = DateStr.indexOf('/' | ||
+ | var arys= DateStr.split(' | ||
+ | myDate = new Date(arys[0], | ||
+ | } | ||
+ | return myDate; | ||
+ | } | ||
+ | |||
+ | |||
+ | |||
+ | 若要显示: | ||
+ | |||
+ | function CurentTime() | ||
+ | { | ||
+ | var now = new Date(); | ||
+ | |||
+ | var year = now.getFullYear(); | ||
+ | var month = now.getMonth() + 1; //月 | ||
+ | var day = now.getDate(); | ||
+ | |||
+ | var hh = now.getHours(); | ||
+ | var mm = now.getMinutes(); | ||
+ | |||
+ | var clock = year + " | ||
+ | |||
+ | if(month < 10) | ||
+ | clock += " | ||
+ | |||
+ | clock += month + " | ||
+ | |||
+ | if(day < 10) | ||
+ | clock += " | ||
+ | |||
+ | clock += day + " "; | ||
+ | |||
+ | if(hh < 10) | ||
+ | clock += " | ||
+ | |||
+ | clock += hh + ":"; | ||
+ | if (mm < 10) clock += ' | ||
+ | clock += mm; | ||
+ | return(clock); | ||
+ | } | ||
</ | </ |