English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Questo articolo condivide con voi come ottenere la data e l'ora corrente in Js e come formattarli, il contenuto specifico è il seguente
var myDate = new Date(); myDate.getYear(); // Ottieni l'anno corrente (2 cifre) myDate.getFullYear(); // Ottieni l'anno completo (4 cifre, 1970-????) myDate.getMonth(); // Ottieni il mese corrente (0-11, 0 rappresenta gennaio) myDate.getDate(); // Ottieni il giorno corrente (1-31) myDate.getDay(); // Ottieni il giorno della settimana corrente (0-6, 0 rappresenta domenica) myDate.getTime(); // Ottieni il tempo corrente (in millisecondi dal 1.1.1970) myDate.getHours(); // Ottieni il numero di ore correnti (0-23) myDate.getMinutes(); // Ottieni il numero di minuti correnti (0-59) myDate.getSeconds(); // Ottieni il numero di secondi corrente (0-59) myDate.getMilliseconds(); // Ottieni il numero di millisecondi corrente (0-999) myDate.toLocaleDateString(); // Ottieni la data corrente var mytime=myDate.toLocaleTimeString(); // Ottieni l'ora corrente myDate.toLocaleString(); // Ottieni data e ora
Elenco dei metodi della libreria di script di data e ora
Date.prototype.isLeapYear Determina l'anno bisestile
Date.prototype.Format Formatta la data
Date.prototype.DateAdd Calcola la data
Date.prototype.DateDiff Confronta la differenza tra le date
Date.prototype.toString Converti la data in una stringa
Date.prototype.toArray Dividi la data in un array
Date.prototype.DatePart Ottieni informazioni parziali della data
Date.prototype.MaxDayOfDate Ottieni il numero massimo di giorni del mese per la data
Date.prototype.WeekNumOfYear Determina la settimana dell'anno per la data
StringToDate Converti una stringa in un tipo data
IsValidDate Verifica della validità della data
CheckDateTime Controllo completo della data e dell'ora
daysBetween Differenza di giorni tra date
js codice:
//--------------------------------------------------- // Determina l'anno bisestile //--------------------------------------------------- Date.prototype.isLeapYear = function() { return (0==this.getYear()%4&&((this.getYear()%100!=0)||(this.getYear()%400==0))); } //--------------------------------------------------- // Formattazione della data // La forma di formato YYYY/yyyy/YY/yy rappresenta l'anno // MM/M mese // W/w settimana // dd/DD/d/D data // hh/HH/h/H ora // mm/m minuti // ss/SS/s/S secondi //--------------------------------------------------- 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; } //+--------------------------------------------------- //| Calcolo della differenza in giorni tra due date Formato della data: 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); } //+--------------------------------------------------- //| Calcolo della data //+--------------------------------------------------- Date.prototype.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.parse(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.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()); } } //+--------------------------------------------------- //| 比较日期差 dtEnd 格式为日期型或者有效日期格式字符串 //+--------------------------------------------------- Date.prototype.DateDiff = function(strInterval, dtEnd) { var dtStart = this; if (typeof dtEnd == 'string' )//如果是字符串转换为日期型 { 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(); } } //+--------------------------------------------------- //| 日期输出字符串,重载了系统的toString方法 //+--------------------------------------------------- Date.prototype.toString = function(showWeek) { var myDate= this; var str = myDate.toLocaleDateString(); if (showWeek) { var Week = ['日','一','二','三','四','五','六']; str += ' 星期' + Week[myDate.getDay()]; } return str; } //+--------------------------------------------------- //| 日期合法性验证 //| 格式为:YYYY-MM-DD或YYYY/MM/DD //+--------------------------------------------------- function IsValidDate(DateStr) { var sDate=DateStr.replace(/(^\s+|\s+$)/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-MM-DD或YYYY-M-DD或YYYY-M-D或YYYY-MM-D { var t = new Date(sDate.replace(/\-/g, '/')); var ar = sDate.split(/[-/:]/); if(ar[0] != t.getYear() || ar[1] != t.getMonth() + 1 || ar[2] != t.getDate()) { //alert('Incorrect date format! Format: YYYY-MM-DD or YYYY/MM/DD. Note leap years.'); return false; } } else { //alert('Incorrect date format! Format: YYYY-MM-DD or YYYY/MM/DD. Note leap years.'); return false; } return true; } //+--------------------------------------------------- //| Date and time check //| Format: 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; r[2] = r[2] - 1; var d = new Date(r[1], r[2], r[3], r[4], r[5], r[6]); 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; } //+--------------------------------------------------- //| Divide the date into an 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; } //+--------------------------------------------------- //| Ottiene le informazioni sui dati di data //| Il parametro interval indica il tipo di dati //| y 年 m月 d日 w星期 ww周 h时 n分 s秒 //+--------------------------------------------------- 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; } //+--------------------------------------------------- //| Ottiene il numero massimo di giorni del mese corrente //+--------------------------------------------------- Date.prototype.MaxDayOfDate = function() { var myDate = this; var ary = myDate.toArray(); var date1 = (new Date(ary[0],ary[1]+1,1)); var date2 = date1.dateAdd(1,'m',1); var result = dateDiff(date1.Format('yyyy-MM-dd'),date2.Format('yyyy-MM-dd')); return result; } //+--------------------------------------------------- //| Ottiene la settimana dell'anno corrente in cui si trova la data corrente //+--------------------------------------------------- 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('< script language=VBScript\> \n'); document.write('myDate = Datue(''+month+'-'+day+'-'+year+'') \n'); document.write('result = DatePart('ww', myDate) \n'); document.write(' \n'); return result; } //+--------------------------------------------------- //| Convert a string to a date type //| Format 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; }
Se si desidera implementare un orologio del genere:
3 dicembre 2012 17:21:16 lunedì
//本地时钟 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 hour = now.getHours(); var minu = now.getMinutes(); var sec = now.getSeconds(); var week; 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; var arr_week = new Array("domenica", "lunedì", "martedì", "mercoledì", "giovedì", "venerdì", "sabato"); week = arr_week[day]; var time = ""; time = year + " anno " + month + " mese " + date + " giorno " + " " + hour + ":" + minu + ":" + sec + " " + week; $("#bgclock").html(time); var timer = setTimeout("clockon()", 200); }
Questo è tutto il contenuto dell'articolo, spero che sia utile per la tua apprendimento, e spero che tutti supportino il tutorial di urla.
Dichiarazione: il contenuto di questo articolo è stato tratto da Internet, il copyright è dell'autore originale, il contenuto è stato contribuito autonomamente dagli utenti di Internet e caricato autonomamente, il sito web non detiene i diritti di proprietà, non è stato editato manualmente e non assume alcuna responsabilità legale correlata. Se trovi contenuti sospetti di violazione del copyright, invia una e-mail a notice#oldtoolbag.com (sostituisci # con @ quando invii l'e-mail) per segnalare, fornendo prove pertinenti. Una volta verificata, il sito web rimuoverà immediatamente i contenuti sospetti di violazione del copyright.