当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript教程:判断日期正确与否的函数

Javascript
getYear()函数问题(javascript教程)
一些比较常见的Javascript框架
JavaScript事件参考手册
javascript时间对象的练习
prototype,executing,context,closure
javascript实现网页跳转的方法
JavaScript的事件:onLoad
JavaScript操作符以及操作符优先级
Javascript操作符应用详细讲解
JavaScript语句
JavaScript 核心对象
Javascript文档及其关联对象
Javascript表单应用的对象
JavaScript初学困境
Javascript触发A标记的点击事件
JavaScript的setAttribute
学习JavaScript语言的思想前提
美化网页表单的提交和重置按钮
一篇简单学习Javascript的学习笔记
仿Apple滑动条产品展示效果

Javascript 中的 JavaScript教程:判断日期正确与否的函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 258 ::
收藏到网摘: n/a

VBScript的IsDate函数用于判断一个日期是否正确,JavaScript没有这个函数,我们也来写一个类似的函数。需要说明的是,JavaScript中IsDate的参数必须为字符串,且支持6种不同的格式"yyyy-mm-dd || yyyy/mm/dd || dd-mm-yyyy || dd/mm/yyyy || mm-dd-yyyy || mm/dd/yyyy",之所以不能使用日期作为参数是因为JavaScript根本没有不正确的日期,比如 new Date(2008,01,30),构造函数会自动将它转换成正确的日期2008-03-01。JavaScript版IsDate函数如下:

function IsDate(dateval){
    var arr = new Array();
   
    if(dateval.indexOf("-") != -1){
        arr = dateval.toString().split("-");
    }else if(dateval.indexOf("/") != -1){
        arr = dateval.toString().split("/");
    }else{
        return false;
    }
   
    //yyyy-mm-dd || yyyy/mm/dd
    if(arr[0].length==4){
        var date = new Date(arr[0],arr[1]-1,arr[2]);
        if(date.getFullYear()==arr[0] && date.getMonth()==arr[1]-1 && date.getDate()==arr[2]){
            return true;
        }
    }
    //dd-mm-yyyy || dd/mm/yyyy
    if(arr[2].length==4){
        var date = new Date(arr[2],arr[1]-1,arr[0]);
        if(date.getFullYear()==arr[2] && date.getMonth()==arr[1]-1 && date.getDate()==arr[0]){
            return true;
        }
    }
    //mm-dd-yyyy || mm/dd/yyyy
    if(arr[2].length==4){
        var date = new Date(arr[2],arr[0]-1,arr[1]);
        if(date.getFullYear()==arr[2] && date.getMonth()==arr[0]-1 && date.getDate()==arr[1]){
            return true;
        }
    }
   
    return false;
}