欧美日韩激情_美女国产一区_国产精品久久久久影院日本_69xxx在线

提供一個js驗證日期比較全的正則表達式

2023-05-06    分類: 網站建設

我們在實際工作當中經常會遇到很多js驗證日期正則表達式的項目,而很多人不知道改如何使用正則表達式來做javascript日期驗證正則表達式,下面我就給大家提供一個本人收集的較全js驗證日期正則表達式。

日期時間腳本庫方法列表

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)
{
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;
}

//+---------------------------------------------------
//| 求兩個時間的天數差 日期格式為 YYYY-MM-dd
//+---------------------------------------------------
function daysBetween(DateOne,DateTwo)
{
var neMonth = DateOne.substring(5,DateOne.lastIndexOf ('-'));
var neDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ('-')+1);
var neYear = 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.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('錯誤的日期格式!格式為:YYYY-MM-DD或YYYY/MM/DD。注意閏年。');
return false;
}
}
else
{
//alert('錯誤的日期格式!格式為:YYYY-MM-DD或YYYY/MM/DD。注意閏年。');
return false;
}
return true;
}

//+---------------------------------------------------
//| 日期時間檢查
//| 格式為: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;
}

//+---------------------------------------------------
//| 把日期分割成數組
//+---------------------------------------------------
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 '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;
}

//+---------------------------------------------------
//| 取得當前日期所在月的大天數
//+---------------------------------------------------
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;
}

//+---------------------------------------------------
//| 取得當前日期所在周是一年中的第幾周
//+---------------------------------------------------
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;
}

//+---------------------------------------------------
//| 字符串轉成日期類型
//| 格式 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;
}

文章標題:提供一個js驗證日期比較全的正則表達式
本文地址:http://m.kartarina.com/news19/258269.html

成都網站建設公司_創新互聯,為您提供小程序開發網站收錄虛擬主機微信小程序網站制作自適應網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

外貿網站制作
欧美日韩激情_美女国产一区_国产精品久久久久影院日本_69xxx在线
亚洲精品久久久蜜桃| 欧美一区二区三区性视频| 久色婷婷小香蕉久久| 亚洲国产欧美日韩另类综合| 国产精品福利一区二区三区| 精品国产一区二区精华| 在线成人午夜影院| 欧美精选一区二区| 欧美日韩一区久久| 91麻豆精品国产自产在线观看一区| 色综合久久中文字幕综合网| 99久久精品国产一区二区三区| 国产成人综合亚洲网站| 国产精品一区三区| 懂色av噜噜一区二区三区av| 成人一级片网址| 成人av网在线| 99v久久综合狠狠综合久久| 91丨porny丨中文| 色噜噜狠狠色综合欧洲selulu| 91蝌蚪porny九色| 在线观看区一区二| 欧美老年两性高潮| 精品国产在天天线2019| 欧美国产日韩精品免费观看| 亚洲欧洲成人精品av97| 亚洲一区二区三区四区五区黄| 偷拍自拍另类欧美| 国产老肥熟一区二区三区| 日韩毛片视频在线看| 亚洲国产成人一区二区三区| 亚洲老妇xxxxxx| 蜜臀av性久久久久蜜臀aⅴ| 国产在线播精品第三| 欧美精品一区二区在线播放| 中文字幕一区在线观看视频| 亚洲精品成人少妇| 国产在线不卡一区| 在线观看国产精品网站| 精品国产凹凸成av人网站| 国产精品久99| 日本网站在线观看一区二区三区 | 亚洲成人www| 日韩经典中文字幕一区| 国产精品亚洲а∨天堂免在线| 91影视在线播放| 日韩午夜精品电影| 亚洲特黄一级片| 精久久久久久久久久久| 亚洲欧美偷拍三级| 免费成人小视频| 91网站在线观看视频| 日韩欧美一卡二卡| 亚洲欧美日韩中文播放 | 国产乱码精品一区二区三区av| 99精品欧美一区| 欧美一二三区在线| 一区二区三区丝袜| av在线一区二区| 精品理论电影在线观看| 一区二区三区国产| 国产成人免费高清| 日韩女优av电影在线观看| 亚洲激情成人在线| 成人福利在线看| 精品久久久久99| 日韩经典中文字幕一区| 91激情在线视频| 中文字幕一区二区三区在线播放| 国产伦精品一区二区三区在线观看| 成人黄页毛片网站| 久久久不卡影院| 麻豆精品久久精品色综合| 在线一区二区观看| 亚洲精品中文在线影院| 国产精品一线二线三线| 久久久久久免费| 国产一区久久久| 久久精品人人做人人综合| 美女视频黄 久久| 欧美一区二区人人喊爽| 日韩av电影免费观看高清完整版在线观看| 99久久精品免费看国产| 亚洲日本va午夜在线电影| av在线不卡观看免费观看| 国产精品欧美综合在线| 国产精品白丝av| 国产嫩草影院久久久久| jlzzjlzz亚洲日本少妇| 国产精品国产三级国产有无不卡| 懂色中文一区二区在线播放| 中文字幕欧美国产| 97久久超碰国产精品| 亚洲美女精品一区| 欧美三级资源在线| 91精品国产欧美日韩| 狠狠色丁香久久婷婷综合丁香| 日韩欧美二区三区| 国产精品99精品久久免费| 国产精品女人毛片| 夜夜嗨av一区二区三区| 欧美日韩高清在线播放| 裸体一区二区三区| 国产日韩精品久久久| 99视频精品全部免费在线| 亚洲精品中文字幕乱码三区| 在线播放91灌醉迷j高跟美女| 蜜桃av一区二区在线观看| 久久久天堂av| 91丨九色丨黑人外教| 日韩福利视频网| 欧美国产精品劲爆| 在线不卡的av| 成人激情小说乱人伦| 日本午夜精品一区二区三区电影 | 99久久99久久精品免费看蜜桃| 亚洲三级在线观看| 日韩欧美资源站| av亚洲精华国产精华| 日韩精品免费视频人成| 亚洲一区二区av在线| 欧美日韩国产片| 国产电影一区在线| 性做久久久久久免费观看欧美| 精品国产伦理网| 在线观看一区二区视频| 国产一区二区在线影院| 亚洲午夜免费福利视频| 国产精品婷婷午夜在线观看| 欧美精品tushy高清| gogogo免费视频观看亚洲一| 青青草精品视频| 亚洲一区二区三区四区在线免费观看 | 精品一区二区三区免费观看| 亚洲男人天堂av| 国产拍欧美日韩视频二区| 717成人午夜免费福利电影| 99久久精品免费看国产 | 亚洲欧洲成人av每日更新| 日韩午夜精品视频| 欧美久久一区二区| 色偷偷久久人人79超碰人人澡| 国产在线精品一区二区夜色| 午夜天堂影视香蕉久久| 国产精品国产三级国产有无不卡 | 成人黄页毛片网站| 国产激情精品久久久第一区二区| 青青青伊人色综合久久| 午夜欧美大尺度福利影院在线看| 亚洲视频一二三| 亚洲色图色小说| 国产精品妹子av| 国产精品色噜噜| 国产色爱av资源综合区| 精品国产乱码久久久久久1区2区| 欧美一区二区三区四区久久| 在线亚洲高清视频| 欧美视频中文一区二区三区在线观看| 成人av电影在线网| 99视频国产精品| 91网站在线播放| 欧美综合久久久| 欧美三级韩国三级日本一级| 欧美在线免费播放| 制服.丝袜.亚洲.另类.中文| 91麻豆精品国产91久久久久久久久| 欧美久久免费观看| 精品国产一区二区亚洲人成毛片 | 亚洲国产一区二区a毛片| 亚洲黄色小视频| 一区二区三区 在线观看视频| 色哟哟日韩精品| 欧美乱妇15p| 欧美va亚洲va| 国产欧美精品日韩区二区麻豆天美| 欧美经典一区二区三区| 中文字幕日本乱码精品影院| 色综合久久99| 欧美日韩成人激情| 久久久久久**毛片大全| 国产精品久久毛片av大全日韩| 1024精品合集| 日本午夜一区二区| 国产精品77777竹菊影视小说| 99久久亚洲一区二区三区青草| 色狠狠色噜噜噜综合网| 欧美美女激情18p| 中文一区一区三区高中清不卡| 中文字幕亚洲在| 日韩成人精品在线观看| 国产精品一品视频| 欧美午夜在线一二页| 2024国产精品| 亚洲欧美日韩国产另类专区| 日本不卡高清视频| 色综合中文字幕国产 | 国产精品99久久久久久似苏梦涵| 91影视在线播放| 精品国产伦一区二区三区观看方式 | 久久成人精品无人区|