js常用判断函数

来源:互联网 发布:板式家具数控编程教程 编辑:程序博客网 时间:2024/05/17 20:24
<%--<script language="javascript" type="text/javascript">                /****************************************          * 函数名称:IsDate          * 功能说明:构造函数          * 参    数:sDate:日期字符串          * 调用示列:           *           string sDate="2008-10-28";          *           IsDate(sDate);         *****************************************/        /// <summary>        /// 判断是否是日期        /// </summary>        /// <param name="sDate">日期字符串</param>        /// <returns>返回是否(bool)</returns>        function IsDate(sDate)        {            var sRegex= /^(\d{4})-(\d{2})-(\d{2})$/;                 var bResult = sDate.match(reg);                 if(bResult==null)            {                return   false;            }                 else            {                return   true;            }        }                /****************************************          * 函数名称:IsNullEmpty          * 功能说明:判断字符串是否为空          * 参    数:str:空字符串          * 调用示列:           *           string str="";          *           IsNullEmpty(str);         *****************************************/        /// <summary>        ///  判断字符串是否为空        /// </summary>        /// <param name="sNullOrEmpty">空字符串</param>        /// <returns>返回是否(bool)</returns>        function IsNullEmpty(sNullOrEmpty)        {            if (sNullOrEmpty.length==''||sNullOrEmpty.length<=0)            {                return false;            }            else            {                return true;            }        }           /****************************************          * 函数名称:IsCurrent          * 功能说明:判断是否是货币          * 参    数:sCurrent:货币字符串          * 调用示列:           *           string sCurrent="88888.00";          *           IsCurrent(sCurrent);         *****************************************/        /// <summary>        /// 判断是否是货币        /// </summary>        /// <param name="sCurrent">货币字符串</param>        /// <returns>返回是否(bool)</returns>        function IsCurrent(sCurrent)        {            var bResult1=sCurrent.match("[^0-9.-]");            var bResult2=sCurrent.match("[[0-9]*[.][0-9]*[.][0-9]*");            var bResult3=sCurrent.match("[[0-9]*[-][0-9]*[-][0-9]");            var bResult4=sCurrent.match("(^([-]|[.]|[-.]|[0-9])[0-9]*[.]*[0-9]+$)|(^([-]|[0-9])[0-9]*$)");            if (bResult1!=null||bResult2!=null||bResult3!=null||bResult4==null)            {                return false;            }            else            {                return true;            }        }                 /****************************************          * 函数名称:IsNumeric          * 功能说明:判断是否是数字          * 参    数:sNum:数字字符串          * 调用示列:           *           string sNum="88888";          *           IsNumeric(sNum);         *****************************************/        /// <summary>        /// 判断是否是数字        /// </summary>        /// <param name="sNum">数字字符串</param>        /// <returns>返回是否(bool)</returns>        function IsNumeric(sNum)        {            var bResult=sNum.match("^(-|\\+)?\\d+(\\.\\d+)?$");            if (bResult==null)            {                return false;            }            else            {                return true;            }        }                 /****************************************          * 函数名称:IsUrl          * 功能说明:判断是否是URL          * 参    数:sUrl:URL字符串          * 调用示列:           *           string sUrl="http:\\www.sina.com.cn";          *           IsUrl(sUrl);         *****************************************/        /// <summary>        /// 判断是否是URL        /// </summary>        /// <param name="sUrl">URL字符串</param>        /// <returns>返回是否(bool)</returns>        function IsUrl(sUrl)        {            var bResult=sUrl.match("http(s)?://([\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?");            if (bResult==null)            {                return false;            }            else            {                return true;            }        }                /****************************************          * 函数名称:IsMail          * 功能说明:判断是否是MAILL          * 参    数:sMail:MAIL字符串          * 调用示列:           *           string sMail="olivier@hdtworld.com";          *           IsMail(sMail);         *****************************************/        /// <summary>        /// 判断是否是MAIL        /// </summary>        /// <param name="sMail">MAIL字符串</param>        /// <returns>返回是否(bool)</returns>        function IsMail(sMail)        {            var bResult=sMail.match("\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");            if (bResult==null)            {                return false;            }            else            {                return true;            }        }                /****************************************          * 函数名称:IsPostCode          * 功能说明:判断是否是邮编          * 参    数:sPostCode:邮编字符串          * 调用示列:           *           string sPostCode="200001";          *           IsPostCode(sPostCode);         *****************************************/        /// <summary>        /// 判断是否是邮编        /// </summary>        /// <param name="sPostCode">邮编字符串</param>        /// <returns>返回是否(bool)</returns>        function IsPostCode(sPostCode)        {            var bResult=sPostCode.match("^\\d{6}$");            if (bResult==null)            {                return false;            }            else            {                return true;            }        }                /****************************************          * 函数名称:IsTelephone          * 功能说明:判断是否是电话号码          * 参    数:sTelephone:电话号码字符串          * 调用示列:           *           string sTelephone="66660000";          *           IsTelephone(sTelephone);         *****************************************/        /// <summary>        /// 判断是否是电话号码        /// </summary>        /// <param name="sTelephone">电话号码字符串</param>        /// <returns>返回是否(bool)</returns>        function IsTelephone(sTelephone)        {            var bResult=sTelephone.match("^(\\(\\d{3}\\)|\\d{3}-)?\\d{8}$");            if (bResult==null)            {                return false;            }            else            {                return true;            }        }                /****************************************          * 函数名称:IsMobile          * 功能说明:判断是否是手机号码          * 参    数:sMobile:手机号码字符串          * 调用示列:           *           string sMobile="1381101101101";          *           IsMobile(sMobile);         *****************************************/        /// <summary>        /// 判断是否是手机号码        /// </summary>        /// <param name="sMobile">手机号码字符串</param>        /// <returns>返回是否(bool)</returns>        function IsMobile(sMobile)        {            var bResult=sMobile.match("^\\d{11}$");            if (bResult==null)            {                return false;            }            else            {                return true;            }        }                /****************************************          * 函数名称:IsIDCard          * 功能说明:判断是否身份证          * 参    数:sIDCard:身份证字符串          * 调用示列:           *           string sIDCard="310106198210054xxx";          *           IsIDCard(sIDCard);         *****************************************/        /// <summary>        /// 判断是否是数字        /// </summary>        /// <param name="sSimNum">数字字符串</param>        /// <returns>返回是否(bool)</returns>        function IsIDCard(sIDCard)        {            var bResult=sIDCard.match("^\\d{15}|\\d{18}$");            if (bResult==null)            {                return false;            }            else            {                return true;            }        }                /****************************************          * 函数名称:IsCE          * 功能说明:判断是中英表达式          * 参    数:sCE:中英文表达式字符串          * 调用示列:           *           string sCE="HDT互动通";          *           IsCE(sCE);         *****************************************/        /// <summary>        /// 判断是中英表达式        /// </summary>        /// <param name="sCE">中英文表达式字符串</param>        /// <returns>返回是否(bool)</returns>        function IsCE(sCE)        {            var bResult=sCE.match("^[a-zA-Z\\u4E00-\\u9FA5\\uF900-\\uFA2D]+$");            if (bResult==null)            {                return false;            }            else            {                return true;            }        }                /// <summary>        /// 密码强度等级        /// </summary>        var pwdLevel;        /// <summary>        /// 密码中是否有字母        /// </summary>        var hasLetter;        /// <summary>        /// 密码中是否有大小写字母        /// </summary>        var hasULLetter;        /// <summary>        /// 密码中是否有数字        /// </summary>        var hasNumeric;        /// <summary>        /// 密码中是否有符号        /// </summary>        var hasSymbol;        /****************************************          * 函数名称:IsPasswordLevel          * 功能说明:判断密码强度          * 参    数:sPassword:密码字符串          * 调用示列:           *           string sPassword="abc123-_";          *           IsPasswordLevel(sPassword);         *****************************************/        /// <summary>        /// 判断密码强度        /// </summary>        /// <param name="sPassword">密码字符串</param>        /// <returns>返回强度等级(string)</returns>        function IsPasswordLevel(sPassword)        {            pwdLevel = 0;            if (sPassword == "" || sPassword == null)            {                return "空密码";            }            else            {                //判断密码长度                JugePwdLength(sPassword);                //判断字母                JugePwdLetter(sPassword);                //判断数字                JugePwdNumeric(sPassword);                //判断符号                JugeSymbol(sPassword);                //判断奖励                JugeAward();                //判断密码级别                //>= 90: 非常安全                 //>= 80: 安全(Secure)                 //>= 70: 非常强                 //>= 60: 强(Strong)                 //>= 50: 一般(Average)                 //>= 25: 弱(Weak)                 //>= 0: 非常弱                 if (pwdLevel > 0)                {                    if (pwdLevel > 25)                    {                        if (pwdLevel > 50)                        {                            if (pwdLevel > 60)                            {                                if (pwdLevel > 70)                                {                                    if (pwdLevel > 80)                                    {                                        if (pwdLevel > 90)                                        {                                            return "非常安全";                                        }                                        else                                        {                                            return "安全";                                        }                                    }                                    else                                    {                                        return "非常强";                                    }                                }                                else                                {                                    return "强";                                }                            }                            else                            {                                return "一般";                            }                        }                        else                        {                            return "弱";                        }                    }                    else                    {                        return "非常弱";                    }                }                return "极其弱";            }        }                 /****************************************          * 函数名称:JugePwdlength          * 功能说明:判断密码字符串长度          * 参    数:str:字符串          * 调用示列:           *           string str="abc123-_";          *           JugePwdlength(str);         *****************************************/        /// <summary>        /// 判断密码字符串长度        /// </summary>        /// <param name="slength">密码字符串</param>        function JugePwdLength(sLength)        {            var length = sLength.length;            if (length <= 4)            {                pwdLevel += 5;            }            else            {                if (length <= 7)                {                    pwdLevel += 10;                }                else                {                    pwdLevel += 20;                }            }        }                /****************************************          * 函数名称:JugePwdLetter          * 功能说明:判断密码强度是否有字符          * 参    数:str:字符串          * 调用示列:           *           string str="abc123-_";          *           JugePwdLetter(str);         *****************************************/        /// <summary>        /// 判断密码强度是否有字符        /// </summary>        /// <param name="sLetter">密码字符串</param>        function JugePwdLetter(sLetter)        {            //0 分: 没有字母             //10 分: 全都是小(大)写字母             //20 分: 大小写混合字母             //判断是否有字母            var count = 0;            var othercount = 0;            var bLower=false, bUpper=false;            for (var i = 0; i <= sLetter.length - 1; i++)            {                //大小写字母的KEYCODE 65-90                if((sLetter.charCodeAt(i)>=65)&&(sLetter.charCodeAt(0)<=90))                {                    count += 1;                }                //判断字符是否有大小写                if (sLetter.substr(i,1).match("[A-Z]"))                {                    bUpper = true;                }                //判断字符是否有大小写                if (sLetter.substr(i,1).match("[a-z]"))                {                    bLower = true;                }            }            if (count == 0)            {                pwdLevel += 0;            }            else            {                hasLetter = true;                if (bLower && bUpper)                {                    pwdLevel += 20;                }                else                {                    pwdLevel += 10;                }            };        }                 /****************************************          * 函数名称:JugePwdNumeric          * 功能说明:判断密码强度是否有数字          * 参    数:str:密码字符串          * 调用示列:           *           string str="abc123-_";          *           JugePwdNumeric(str);         *****************************************/        /// <summary>        /// 判断密码强度是否有数字        /// </summary>        /// <param name="str">密码字符串</param>        function JugePwdNumeric(sNum)        {            //三、数字:            //0 分: 没有数字             //10 分: 1 个数字             //20 分: 大于等于 3 个数字             var count = 0;            for (var i = 0; i <= sNum.length - 1; i++)            {               //数字的KEYCODE 96-105               if((sNum.charCodeAt(i)>=96)&&(sNum.charCodeAt(0)<=105))                {                    count += 1;                }            }            if (count == 0)            {                pwdLevel += 0;            }            else            {                hasNumeric = true;                if (count < 3)                {                    pwdLevel += 10;                }                else                {                    pwdLevel += 20;                }            }        }                /****************************************          * 函数名称:JugeAward          * 功能说明:判断密码强度奖励          * 参    数:          * 调用示列:           *           JugeAward();         *****************************************/        /// <summary>        /// 判断密码强度奖励        function JugeAward()        {            //五、奖励:            //2 分: 字母和数字             //3 分: 字母、数字和符号             //5 分: 大小写字母、数字和符号             if (hasLetter && hasNumeric)            {                if (hasSymbol)                {                    if (hasULLetter)                    {                        pwdLevel += 5;                    }                    else                    {                        pwdLevel += 3;                    }                }                else                {                    pwdLevel += 2;                }            }        }        /****************************************          * 函数名称:JugeAward          * 功能说明:判断特定的符号          * 参    数:str:密码字符串          * 调用示列:           *           string str="abc123-_";          *           IsSymbol(str);         *****************************************/        /// <summary>        /// 判断特定的符号        /// </summary>        /// <param name="str">密码字符串</param>        /// <returns>返回是否(bool)</returns>        function IsSymbol(str)        {            var bResult=str.match("[_]|[-]|[#]");            if (bResult==null)            {                return false;            }            else            {                return true;            }        }        /****************************************          * 函数名称:JugeSymbol          * 功能说明:判断是密码强度否有符号          * 参    数:str:密码字符串          * 调用示列:           *           string str="abc123-_";          *           JugeSymbol(str);         *****************************************/        /// <summary>        /// 判断是密码强度否有符号        /// </summary>        /// <param name="str">密码字符串</param>        function JugeSymbol(sSymbol)        {            //四、符号:            //0 分: 没有符号             //10 分: 1 个符号             //25 分: 大于 1 个符号             var count = 0;            var tmpstr = "";            for (var i = 0; i <= sSymbol.length - 1; i++)            {                tmpstr = sSymbol.substr(i, 1);                if (IsSymbol(tmpstr))                {                    count += 1;                }            }            if (count == 0)            {                pwdLevel += 0;            }            else            {                hasSymbol = true;                if (count > 1)                {                    pwdLevel += 25;                }                else                {                    pwdLevel += 10;                }            }        }            </script>--%>