`

判断日期的有效性

阅读更多

/**
 * 方法描述:去除字符串前后的所有空格
 * 参数:str 字符串
 */

function trim(str)
 {
  return str.replace(/^(\s*)|(\s*)$/g,'');
 }
 
 

 /**
 * 方法描述:日期格式的校验:如:2008-02-29或者2008/02/29等这样的才算合法
 * 参数:dataStr 日期的字符串
 */

function validateDate(dataStr)
 {

     dataStr=trim(dataStr);
  //日期的基本格式,正则表达式
  var regd=/^\d{4}[-|\/]\d{1,2}[-|\/]\d{1,2}$/; 
     var day=[31,28,31,30,31,30,31,31,30,31,30,31]; //各月份的最大天数,当然,月份另外判断
     
     if(dataStr!=null&&dataStr.length>0)
     {
      if(regd.test(dataStr))
      {
       var years=dataStr.substring(0,dataStr.indexOf('-')); //年
       var months=dataStr.substring(dataStr.indexOf('-')+1,dataStr.lastIndexOf('-')); //月
       var days=dataStr.substring(dataStr.lastIndexOf('-')+1,dataStr.length); //日
       
       if(parseInt(months)>12||(parseInt(months)!=2&&parseInt(days)>day[parseInt(months)-1])) //每个月份的天数不能大于该月份的最大天数,除了2月份不在此判断中
       {   
            
        return '日期数据不对';
       }
       
       if(isPreYear(years)) //闰年与否
       {
        if(parseInt(months)==2&&parseInt(days)>29)
        {
         return '日期数据不对';
        }
       }
       else{
        
        if(parseInt(months)==2&&parseInt(days)>28)
        {
         return '日期数据不对';
        }
       }
       
       
      }else
      {
       return '日期格式不对';
      }
     }
     
     return 'pass';
 }
 

 
 /**
 * 方法描述:是否是闰年的判断
 * 参数:years 日期中年份的字符串
 */

function isPreYear(years)
 {
  if(years % 4 == 0)
         {
            if(years % 100 == 0)
            {
                if(years % 400 == 0)
                 return true;
                else
                 return false;
            }
            else
             return true;
         }
         else
            return false;
 }
 

 

分享到:
评论

相关推荐

    C++判断日期有效性,并输出一天后的日期

    初学C++时写的程序。 选择一个日期,依次输入年、月、日,判断其有效性,并输出一天后的日期。

    C# 源码 判断 身份证号 有效性

    C# 源码 判断 身份证号 有效性 包含:长度 校验位 出生日期 省份 等判断算法

    js判断日期时间有效性的方法

    主要介绍了判断js验证日期时间有效性的方法,需要的朋友可以参考下

    js对日期操作

    Date.prototype.isLeapYear 判断闰年 Date.prototype.Format 日期格式化 Date.prototype.DateAdd 日期计算 ...IsValidDate 验证日期有效性 CheckDateTime 完整日期时间检查 daysBetween 日期天数差

    js日期时间格式验证,时间比较

    日期时间脚本库方法列表 Date.prototype.isLeapYear 判断闰年 Date.prototype.Format 日期格式化 Date.prototype.DateAdd 日期...IsValidDate 验证日期有效性 CheckDateTime 完整日期时间检查 daysBetween 日期天数差

    php使用strtotime和date函数判断日期是否有效代码分享

    咋一想,判断日期是否有效应该是蛮简单的一个功能,但是细想起来还是有点麻烦的,因为既要检验格式,又要检验有效性。例如2013-02-29,虽然格式正确,但是日期无效;而2012-02-29格式正确,也有效。 一种方法可以...

    检查日期有效性:程序检查以 DD/MM/YYYY 格式输入的日期是否有效。-matlab开发

    程序检查以 DD/MM/YYYY 格式输入的日期是否有效。 进行闰年修正测试: 判断年份是否为闰年的伪代码: 如果年份可被 400 整除,则 is_leap_year 否则如果年份能被 100 整除,则 not_leap_year 否则如果年份可以被 ...

    java8日期工具类大全

    日期格式化和解析:日期工具类可以提供方法来格式化和解析日期字符串。使用DateTimeFormatter类可以定义自定义的日期格式,并在日期和字符串之间...这样,开发人员可以在处理日期字符串之前先验证其格式的有效性,以避

    javascript 验证日期的函数

    导致数据库跑任务出现错误(任务根据日期来计算状态的,由于数据量比较大,都做成任务夜里跑),为了避免再出现此类的错误,所以增加了一个验证日期有效性的javascript方法。 本方法能够有效的验证闰年,支持的日期...

    js验证身份证号有效性并提示对应信息

    主要介绍了一段超级全面的二代身份证号码验证程序,

    C++ 课程作业 类与对象2——构造函数、拷贝构造函数、析构函数(计算两个日期间的天数)

    2、请使用构造函数实现的类的初始化工作,并判断日期和时间的有效性。年月日时分秒应该在正确的范围内。考虑闰年时候二月份的情况。时间的格式是xx:xx:xx,小时不是超过23,分钟和秒不能超过59。 1)如果日期无效...

    php根据日期判断星座的函数分享

    复制代码 代码如下:function yige_constellation($month, $day) { // 检查参数有效性 if ($month < 1> 12 || $day < 1> 31) return false; // 星座名称以及开始日期 $constellations = array( array( “20” => ...

    bsp_PCF8563.rar_PCF8563 stm32_STM32 PCF85_STM32 pcf8563_pcf8563

    PCF8563的驱动程序,使用stm32硬件I2C口线实现。含日期时间有效性判断函数,星期计算函数。

    非常不错的js工具类

    该js工具类包含项目常用的字符长度判断,日期处理,数据类型和有效性的检验,以及各种可以直接用于项目的工具。

    javascript常用工具集(带使用示例)

    * 判断一个字符串是否是有效的日期型字符串 * 将两位数的年份转变成4位数的年份 * 判断YYYYMMDD格式或者YYYYMM格式的串是否是日期型字符串 * 删除字符串左右两端的空格 * 检查在字符串中是否存在一个模式 * 计算字符...

    PHP函数库,PHP函数大全,PHP函数实例,PHP函数手册,PHP5函数库实例

    检测URL地址有效性 检测文件是否图片 检测是否可以以网页形式显示 检测是否序列化后的字符串 模仿JAVASCRIPT的ESCAPE和UNESCAPE函数的功能 用curl函数读取远程文件 用file_getcontents提交数据 用php生成扭曲...

    实用编辑框

    1.增加了数据对齐方式; 2.浮点输入时自动判断增加千分符; 3.日期时间输入时自动判断校验数据有效性; 4.文本输入方式时利用新加函数OnCanWriteText可随意过滤输入字符。

    卡巴斯基授权文件校验工具

    【验证Key文件有效性】需要读取卡巴的黑名单文件“black.lst”,如果您已经安装了KAV/KIS6、7、8的,则程序会自动读取该文件,只要您的病毒数据库是最新的,那么黑名单验证的结果也是最新的。 KAV、KIS黑名单文件...

    100个直接可以拿来用的JavaScript实用功能代码片段(1-10)

    61、原生JavaScript解决offsetX兼容性问题 62、原生JavaScript常用的正则表达式 63、原生JavaScript实现返回顶部的通用方法 64、原生JavaScript获得URL中GET参数值 65、原生JavaScript实现全选通用方法 66、原生...

Global site tag (gtag.js) - Google Analytics