Js获取当前日期时间及格式化代码
本文为大家分享了Js获取当前日期时间及格式化操作,具体内容如下
varmyDate=newDate(); myDate.getYear();//获取当前年份(2位) myDate.getFullYear();//获取完整的年份(4位,1970-????) myDate.getMonth();//获取当前月份(0-11,0代表1月) myDate.getDate();//获取当前日(1-31) myDate.getDay();//获取当前星期X(0-6,0代表星期天) myDate.getTime();//获取当前时间(从1970.1.1开始的毫秒数) myDate.getHours();//获取当前小时数(0-23) myDate.getMinutes();//获取当前分钟数(0-59) myDate.getSeconds();//获取当前秒数(0-59) myDate.getMilliseconds();//获取当前毫秒数(0-999) myDate.toLocaleDateString();//获取当前日期 varmytime=myDate.toLocaleTimeString();//获取当前时间 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&&((this.getYear()%100!=0)||(this.getYear()%400==0))); } //--------------------------------------------------- //日期格式化 //格式YYYY/yyyy/YY/yy表示年份 //MM/M月份 //W/w星期 //dd/DD/d/D日期 //hh/HH/h/H时间 //mm/m分钟 //ss/SS/s/S秒 //--------------------------------------------------- Date.prototype.Format=function(formatStr) { varstr=formatStr; varWeek=['日','一','二','三','四','五','六']; 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()); returnstr; } //+--------------------------------------------------- //|求两个时间的天数差日期格式为YYYY-MM-dd //+--------------------------------------------------- functiondaysBetween(DateOne,DateTwo) { varOneMonth=DateOne.substring(5,DateOne.lastIndexOf('-')); varOneDay=DateOne.substring(DateOne.length,DateOne.lastIndexOf('-')+1); varOneYear=DateOne.substring(0,DateOne.indexOf('-')); varTwoMonth=DateTwo.substring(5,DateTwo.lastIndexOf('-')); varTwoDay=DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf('-')+1); varTwoYear=DateTwo.substring(0,DateTwo.indexOf('-')); varcha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)-Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000); returnMath.abs(cha); } //+--------------------------------------------------- //|日期计算 //+--------------------------------------------------- Date.prototype.DateAdd=function(strInterval,Number){ vardtTmp=this; switch(strInterval){ case's':returnnewDate(Date.parse(dtTmp)+(1000*Number)); case'n':returnnewDate(Date.parse(dtTmp)+(60000*Number)); case'h':returnnewDate(Date.parse(dtTmp)+(3600000*Number)); case'd':returnnewDate(Date.parse(dtTmp)+(86400000*Number)); case'w':returnnewDate(Date.parse(dtTmp)+((86400000*7)*Number)); case'q':returnnewDate(dtTmp.getFullYear(),(dtTmp.getMonth())+Number*3,dtTmp.getDate(),dtTmp.getHours(),dtTmp.getMinutes(),dtTmp.getSeconds()); case'm':returnnewDate(dtTmp.getFullYear(),(dtTmp.getMonth())+Number,dtTmp.getDate(),dtTmp.getHours(),dtTmp.getMinutes(),dtTmp.getSeconds()); case'y':returnnewDate((dtTmp.getFullYear()+Number),dtTmp.getMonth(),dtTmp.getDate(),dtTmp.getHours(),dtTmp.getMinutes(),dtTmp.getSeconds()); } } //+--------------------------------------------------- //|比较日期差dtEnd格式为日期型或者有效日期格式字符串 //+--------------------------------------------------- Date.prototype.DateDiff=function(strInterval,dtEnd){ vardtStart=this; if(typeofdtEnd=='string')//如果是字符串转换为日期型 { dtEnd=StringToDate(dtEnd); } switch(strInterval){ case's':returnparseInt((dtEnd-dtStart)/1000); case'n':returnparseInt((dtEnd-dtStart)/60000); case'h':returnparseInt((dtEnd-dtStart)/3600000); case'd':returnparseInt((dtEnd-dtStart)/86400000); case'w':returnparseInt((dtEnd-dtStart)/(86400000*7)); case'm':return(dtEnd.getMonth()+1)+((dtEnd.getFullYear()-dtStart.getFullYear())*12)-(dtStart.getMonth()+1); case'y':returndtEnd.getFullYear()-dtStart.getFullYear(); } } //+--------------------------------------------------- //|日期输出字符串,重载了系统的toString方法 //+--------------------------------------------------- Date.prototype.toString=function(showWeek) { varmyDate=this; varstr=myDate.toLocaleDateString(); if(showWeek) { varWeek=['日','一','二','三','四','五','六']; str+='星期'+Week[myDate.getDay()]; } returnstr; } //+--------------------------------------------------- //|日期合法性验证 //|格式为:YYYY-MM-DD或YYYY/MM/DD //+--------------------------------------------------- functionIsValidDate(DateStr) { varsDate=DateStr.replace(/(^\s+|\s+$)/g,'');//去两边空格; if(sDate=='')returntrue; //如果格式满足YYYY-(/)MM-(/)DD或YYYY-(/)M-(/)DD或YYYY-(/)M-(/)D或YYYY-(/)MM-(/)D就替换为'' //数据库中,合法日期可以是:YYYY-MM/DD(2003-3/21),数据库会自动转换为YYYY-MM-DD格式 vars=sDate.replace(/[\d]{4,4}[\-/]{1}[\d]{1,2}[\-/]{1}[\d]{1,2}/g,''); if(s=='')//说明格式满足YYYY-MM-DD或YYYY-M-DD或YYYY-M-D或YYYY-MM-D { vart=newDate(sDate.replace(/\-/g,'/')); varar=sDate.split(/[-/:]/); if(ar[0]!=t.getYear()||ar[1]!=t.getMonth()+1||ar[2]!=t.getDate()) { //alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。'); returnfalse; } } else { //alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。'); returnfalse; } returntrue; } //+--------------------------------------------------- //|日期时间检查 //|格式为:YYYY-MM-DDHH:MM:SS //+--------------------------------------------------- functionCheckDateTime(str) { varreg=/^(\d+)-(\d{1,2})-(\d{1,2})(\d{1,2}):(\d{1,2}):(\d{1,2})$/; varr=str.match(reg); if(r==null)returnfalse; r[2]=r[2]-1; vard=newDate(r[1],r[2],r[3],r[4],r[5],r[6]); if(d.getFullYear()!=r[1])returnfalse; if(d.getMonth()!=r[2])returnfalse; if(d.getDate()!=r[3])returnfalse; if(d.getHours()!=r[4])returnfalse; if(d.getMinutes()!=r[5])returnfalse; if(d.getSeconds()!=r[6])returnfalse; returntrue; } //+--------------------------------------------------- //|把日期分割成数组 //+--------------------------------------------------- Date.prototype.toArray=function() { varmyDate=this; varmyArray=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(); returnmyArray; } //+--------------------------------------------------- //|取得日期数据信息 //|参数interval表示数据类型 //|y年m月d日w星期ww周h时n分s秒 //+--------------------------------------------------- Date.prototype.DatePart=function(interval) { varmyDate=this; varpartStr=''; varWeek=['日','一','二','三','四','五','六']; switch(interval) { case'y':partStr=myDate.getFullYear();break; case'm':partStr=myDate.getMonth()+1;break; case'd':partStr=myDate.getDate();break; case'w':partStr=Week[myDate.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();break; } returnpartStr; } //+--------------------------------------------------- //|取得当前日期所在月的最大天数 //+--------------------------------------------------- Date.prototype.MaxDayOfDate=function() { varmyDate=this; varary=myDate.toArray(); vardate1=(newDate(ary[0],ary[1]+1,1)); vardate2=date1.dateAdd(1,'m',1); varresult=dateDiff(date1.Format('yyyy-MM-dd'),date2.Format('yyyy-MM-dd')); returnresult; } //+--------------------------------------------------- //|取得当前日期所在周是一年中的第几周 //+--------------------------------------------------- Date.prototype.WeekNumOfYear=function() { varmyDate=this; varary=myDate.toArray(); varyear=ary[0]; varmonth=ary[1]+1; varday=ary[2]; document.write('<scriptlanguage=VBScript\>\n'); document.write('myDate=Datue(''+month+'-'+day+'-'+year+'')\n'); document.write('result=DatePart('ww',myDate)\n'); document.write('\n'); returnresult; } //+--------------------------------------------------- //|字符串转成日期类型 //|格式MM/dd/YYYYMM-dd-YYYYYYYY/MM/ddYYYY-MM-dd //+--------------------------------------------------- functionStringToDate(DateStr) { varconverted=Date.parse(DateStr); varmyDate=newDate(converted); if(isNaN(myDate)) { //vardelimCahar=DateStr.indexOf('/')!=-1?'/':'-'; vararys=DateStr.split('-'); myDate=newDate(arys[0],--arys[1],arys[2]); } returnmyDate; }
如果要实现这样的时钟:
2012年12月03日17:21:16星期一
//本地时钟 functionclockon(){ varnow=newDate(); varyear=now.getFullYear();//getFullYeargetYear varmonth=now.getMonth(); vardate=now.getDate(); varday=now.getDay(); varhour=now.getHours(); varminu=now.getMinutes(); varsec=now.getSeconds(); varweek; month=month+1; if(month<10)month="0"+month; if(date<10)date="0"+date; if(hour<10)hour="0"+hour; if(minu<10)minu="0"+minu; if(sec<10)sec="0"+sec; vararr_week=newArray("星期日","星期一","星期二","星期三","星期四","星期五","星期六"); week=arr_week[day]; vartime=""; time=year+"年"+month+"月"+date+"日"+""+hour+":"+minu+":"+sec+""+week; $("#bgclock").html(time); vartimer=setTimeout("clockon()",200); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。