js 判断日期格式

JavaScript027

js 判断日期格式,第1张

functionisDate(dateString){

if(dateString.trim()=="")returntrue

varr=dateString.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/)

if(r==null){

alert("请输入格式正确的日期\n\r日期格式:yyyy-mm-dd\n\r例  如:2008-08-08\n\r")

returnfalse

}

vard=newDate(r[1],r[3]-1,r[4])

varnum = (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4])

if(num==0){

alert("请输入格式正确的日期\n\r日期格式:yyyy-mm-dd\n\r例  如:2008-08-08\n\r")

}

return(num!=0)

}

通过js的Date对象进行判断JSON是一种数据格式,和JS对象虽然语法类似,但是还是有根本区别的。

JSON格式在传输时只能传输一些基本数据类型,如String、Number、Boolean。因此我想你说的date类型只是JSON数据中的一个字符串,例如:varjson={date:'2013-02-2610:50:22'}你可以通过一个正则表达式来判断是否为日期格式,如:varreg=/^\d{4}-\d{2}-\d{2}\d{2}:\d{2}:\d{2}$/varisDate=reg.test(json.date)alert(isDate)

主要原理是把得到的年月日拼成字符串与客户端输入的做比较,如相等则对,否则错。函数如下

function

checkdate(instring,fieldname)

{

var

tempdate

var

a=new

date(instring)

var

y=a.getfullyear()

var

m=a.getmonth()+1

var

d=a.getdate()

var

myday=y

+

"/"

+

m

+

"/"

+

d

if

(myday!=instring)

{

alert

"请为"+

fieldname

+"输入一有效日期(yyyy/m/d/)。"

return

false

}

return

true

}