English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Este artigo compartilha com vocês como obter a data e hora atuais em JavaScript e como formatá-las, detalhes如下
var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份(4,1970-?63;63;63;) 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(); //获取当前日期 var mytime=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))); } //--------------------------------------------------- // Formatação de data // Formato YYYY/yyyy/YY/yy Representa o ano // MM/M Mês // W/w Semana // dd/DD/d/D Data // hh/HH/h/H Hora // mm/m Minutos // ss/SS/s/S Segundos //--------------------------------------------------- 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' + str=str.replace(/s|S/g,this.getSeconds()); retorna str; } //+--------------------------------------------------- //| Calcula a diferença em dias entre duas datas no formato YYYY-MM-dd //+--------------------------------------------------- function daysBetween(DateOne, DateTwo) { var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ('- var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ('-')+1); var OneYear = DateOne.substring(0,DateOne.indexOf ('- var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ('- var TwoDay = 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(cha); } //+--------------------------------------------------- //| Cálculo de datas //+--------------------------------------------------- Date.prototype.DateAdd = function(strInterval, Número) { var dtTmp = this; switch (strInterval) { case 's' :return new Date(Date.parse(dtTmp) + (1000 * Número)); case 'n' :return new Date(Date.parse(dtTmp) + (60000 * Número)); case 'h' :return new Date(Date.parse(dtTmp) + (3600000 * Número)); case 'd' :return new Date(Date.parse(dtTmp) + (86400000 * Número)); case 'w' :return new Date(Date.parse(dtTmp) + ((86400000 * 7) * Número)); case 'q' :return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + Número*3, dtTmp.getDate(), dtTmp.getHours(), 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.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds()); } } //+--------------------------------------------------- //| Comparar a diferença de datas dtEnd no formato de data ou string de data válida //+--------------------------------------------------- Date.prototype.DateDiff = function(strInterval, dtEnd) { var dtStart = this; if (typeof dtEnd == 'string' )//Se for uma string, converta para tipo de data { dtEnd = StringToDate(dtEnd); } switch (strInterval) { case 's' :return 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)); case 'm' :return (dtEnd.getMonth()+1)+((dtEnd.getFullYear()-dtStart.getFullYear())*12) - (dtStart.getMonth()+1); case 'y' :return dtEnd.getFullYear() - dtStart.getFullYear(); } } //+--------------------------------------------------- //| Stringa de saída de data, sobrecarrega o método toString do sistema //+--------------------------------------------------- Date.prototype.toString = function(showWeek) { var myDate = this; var str = myDate.toLocaleDateString(); se(showWeek) { var Week = ['日','一','二','三','四','五','六']; str += ' Semana' + Semana[myDate.getDay()]; } retorna str; } //+--------------------------------------------------- //| Verificação de validade da data //| Formato: YYYY-MM-/MM/DD //+--------------------------------------------------- { var sDate = DateStr.replace(/(^\s+|\s+$)/g,''); //remova os espaços em branco; se(sDate=='') return true; //se a formatação satisfaz YYYY-(/)MM-(/)DD ou YYYY-(/)M-(/)DD ou YYYY-(/)M-(/)D ou YYYY-(/)MM-(/)D substitua por '' //No banco de dados, a data válida pode ser: YYYY-MM/DD(2003-3/21), o banco de dados convertirá automaticamente para YYYY-MM- var s = sDate.replace(/[\d]{ 4,4 [\-/}] 1 }[\d]{ 1,2 [\-/}] 1 }[\d]{ 1,2 }/g,''); se(s=='') //A formatação satisfaz YYYY-MM--M--M-D ou YYYY-MM- { var t = new Date(sDate.replace(/\-/g,'/ var ar = sDate.split(/[-/]:]/); se(ar[0] != t.getYear() || ar[1] != t.getMonth()+1 || ar[2] != t.getDate()) { //alert('Formato de data inválido! Formato: YYYY-MM-/MM/DD. Atenção ao ano bissexto.') retorna falso; } } else { //alert('Formato de data inválido! Formato: YYYY-MM-/MM/DD. Atenção ao ano bissexto.') retorna falso; } return true; } //+--------------------------------------------------- //| Verificação de data e hora //| Formato: YYYY-MM-DD HH:MM:SS //+--------------------------------------------------- function VerificarDataHora(str) { var reg = /^(\d+)-(\d{ 1,2 })-(\d{ 1,2 }) (\d{ 1,2 }) (\d{ 1,2 }) (\d{ 1,2 })$/month = month var r = str.match(reg); se(r==null)retorna falso; r[2]=r[2]-1month = month var d = new Date(r[1],r[2],r[3],r[4],r[5],r[6 se(d.getFullYear() != r[1])return false; se(d.getMonth() != r[2])return false; se(d.getDate() != r[3])return false; se(d.getHours() != r[4])return false; se(d.getMinutes() != r[5])return false; se(d.getSeconds() != r[6])return false; return true; } //+--------------------------------------------------- //| Dividir a data em um array //+--------------------------------------------------- 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; } //+--------------------------------------------------- //| Obter informações de dados de data //| O parâmetro interval indica o tipo de dados //| y ano m mês d dia w semana ww semana h hora n minuto s segundo //+--------------------------------------------------- Date.prototype.DatePart = function(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' :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; } return partStr; } //+--------------------------------------------------- //| Obter o número máximo de dias do mês atual //+--------------------------------------------------- Date.prototype.MaxDayOfDate = function() { var myDate = this; var ary = myDate.toArray(); var date1 data = (new Date(ary[0],ary[1]+1,1)); var date2 data = date1.dateAdd(1,'m',1); var result = dateDiff(date1.Format('yyyy-MM-dd'),date2.Format('yyyy-MM-dd')); return result; } //+--------------------------------------------------- //| 取得当前日期所在周是一年中的第几周 //+--------------------------------------------------- Date.prototype.WeekNumOfYear = function() { var myDate = this; var ary = myDate.toArray(); var year = ary[0]; var month = ary[1]+1month = month var day = ary[2]; document.write('< script language=VBScript\> \n'); document.write('myDate = Datue(''+month+'-'+day+'-'+year+'') \n'); document.write('result = DatePart('ww', myDate) \n'); document.write(' \n'); 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('/')!=-1?'/':'-'; var arys= DateStr.split('-'); myDate = new Date(arys[0],--arys[1],arys[2 } return myDate; }
If you want to implement such a clock:
2012year12month 03day 17:21:16 Monday
//loca clock function clockon() { var now = new Date(); var year = now.getFullYear(); //getFullYear getYear var month = now.getMonth(); var date = now.getDate(); var day = now.getDay(); var day = now.getDay(); var hour = now.getHours(); var minu = now.getMinutes(); var sec = now.getSeconds(); var week; + 1month = 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; var arr_week = new Array("domingo", "segunda-feira", "terça-feira", "quarta-feira", "quinta-feira", "sexta-feira", "sábado"); week = arr_week[day]; var time = ""; time = year + "ano" + month + "mês" + date + "dia" + " " + hour + : + minu + : + sec + " " + week; $("#bgclock").html(time); var timer = setTimeout("clockon()", 200); }
Isso é tudo o que há no artigo. Esperamos que isso ajude na sua aprendizagem e que você apóie o tutorial Yell.
Declaração: O conteúdo deste artigo é de origem na internet, pertence ao autor original, foi submetido e carregado voluntariamente pelos usuários da internet. Este site não possui direitos de propriedade, não foi editado manualmente e não assume responsabilidade por eventuais responsabilidades legais. Se você encontrar conteúdo suspeito de violação de direitos autorais, por favor, envie um e-mail para: notice#oldtoolbag.com (ao enviar e-mail, substitua # por @ para denunciar e forneça provas relevantes. Apenas após a verificação, o site deletará o conteúdo suspeito de violação de direitos autorais.>