Home  >  Article  >  Web Front-end  >  JavaScript gets the current date and time and other operation functions_time and date

JavaScript gets the current date and time and other operation functions_time and date

WBOY
WBOYOriginal
2016-05-16 18:12:14771browse

myDate.getYear(); //Get the current year (2 digits)
myDate.getFullYear(); //Get the complete year (4 digits, 1970-????)
myDate.getMonth(); //Get the current month (0-11, 0 represents January)
myDate.getDate(); //Get the current day (1-31)
myDate.getDay(); //Get the current week X( 0-6, 0 represents Sunday)
myDate.getTime(); //Get the current time (the number of milliseconds since 1970.1.1)
myDate.getHours(); //Get the current number of hours (0- 23)
myDate.getMinutes(); //Get the current minutes (0-59)
myDate.getSeconds(); //Get the current seconds (0-59)
myDate.getMilliseconds() ; //Get the current milliseconds (0-999)
myDate.toLocaleDateString(); //Get the current date
var mytime=myDate.toLocaleTimeString(); //Get the current time
myDate.toLocaleString( ; .DateAdd Date calculation
Date.prototype.DateDiff Compare date difference
Date.prototype.toString Convert date to string
Date.prototype.toArray Split date into array
Date.prototype.DatePart Get date Partial information
Date.prototype.MaxDayOfDate Gets the maximum number of days in the month where the date is located
Date.prototype.WeekNumOfYear Determines the week of the year where the date is located
StringToDate Converts string to date type
IsValidDate Verifies date validity
CheckDateTime complete date and time check
daysBetween date-day difference




Copy code

The code is as follows:

//------------------------------------------------ ----------
// Determining leap years
//-------------------------------- -----------------------
Date.prototype.isLeapYear = function()
{
return (0==this.getYear( )%4&&((this.getYear() 0!=0)||(this.getYear()@0==0)));
}

//----- -----------------------------------------------
/ / Date formatting
// Format YYYY/yyyy/YY/yy represents year
// MM/M month
// W/w week
// dd/DD/d/D date
// hh/HH/h/H time
// mm/m minutes
// ss/SS/s/S seconds
//---------- ----------------------------------------
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;
}

// ---------------------------- -----------------------
//| Find the difference in days between two times. The date format is 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);
}


// -------------------------- -----------------------------
//| Date calculation
// ---------- ------------------------------------------
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());
}
}

// -------------------------- -----------------------------
//| Compare date difference dtEnd format is date type or valid date format string
//------------------------------------------------ ---
Date.prototype.DateDiff = function(strInterval, dtEnd) {
var dtStart = this;
if (typeof dtEnd == 'string' )//If it is a string, convert it to date type
{
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();
}
}

//--------------------------------------------- ---------
//| Date output string, overloaded the system's toString method
// ------------------ ----------------------------------
Date.prototype.toString = function(showWeek)
{
var myDate= this;
var str = myDate.toLocaleDateString();
if (showWeek)
{
var Week = ['Day','Monday','Two', 'three','four','five','six'];
str = 'week' Week[myDate.getDay()];
}
return str;
}

// ----------------------------------------------- -------
//| Date legality verification
//| The format is: YYYY-MM-DD or YYYY/MM/DD
// -------- ---------------------------------------------
function IsValidDate(DateStr )
{
var sDate=DateStr.replace(/(^s |s $)/g,''); //Remove spaces on both sides;
if(sDate=='') return true;
//If the format satisfies YYYY-(/)MM-(/)DD or YYYY-(/)M-(/)DD or YYYY-(/)M-(/)D or YYYY-(/)MM -(/)D is replaced with ''
//In the database, the legal date can be: YYYY-MM/DD (2003-3/21), the database will automatically convert to YYYY-MM-DD format
var s = sDate.replace(/[d]{ 4,4 }[-/]{ 1 }[d]{ 1,2 }[-/]{ 1 }[d]{ 1,2 }/g,' ');
if (s=='') //The description format satisfies YYYY-MM-DD or YYYY-M-DD or YYYY-M-D or 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('Wrong date format! The format is: YYYY-MM-DD or YYYY/MM/DD. Pay attention to leap years. ');
return false;
}
}
else
{
//alert('Wrong date format! The format is: YYYY-MM-DD or YYYY/MM /DD. Note leap years.');
return false;
}
return true;
}

// ------------------ --------------------------------
//| Date and time check
//| The format is: 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;
}

//------------------------------------------------ ------
//| Split the date into arrays
// ---------------------------- -----------------------
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;
}

// ------------------------------------------ ----------
//| Get date data information
//| The parameter interval represents the data type
//| y year m month d day w week ww week h hour n Minutes s seconds
//--------------------------------------------- ---------
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;
}

// ---------------------------------------- ----------
//| Get the maximum number of days in the month of the current date
// -------------------- -------------------------------
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;
}

// ---------------------------------------- ---------------
//| Get the week of the year that the current date is in
// ---------- ----------------------------------------
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 = DateValue('' month '-' day '- ' year '') n');
document.write('result = DatePart('ww', myDate) n');
document.write(' n');
return result;
}

// --------------------------------------- ------------
//| Convert string to 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;
}
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn