常用JavaScript_1

本文深入探讨了从前端开发到大数据开发等信息技术领域的核心技术,包括编程语言、开发工具、测试方法、数据库管理等,旨在为开发者提供全面的技术指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


 judge.js

 

 /**
函数名称:isChinese
函数功能:判断输入是否包括中文或者其他符号
输入参数:需要测试的字符串
返回参数:包括中文和其他符号:true 不包括中文和其他符号: false
*/
function isChinese(strTemp)
{

    var i;
    for(i=0;i<strTemp.length;i++)
    {
        if((strTemp.charCodeAt(i)<0)||(strTemp.charCodeAt(i))>255)
        {
            return false;
        }
    }
    return true;
}

/**
函数名称:fucCheckLength
函数功能:判断输入字符串的长度(包括中文)
输入参数:需要测试的字符串
返回参数:sum:字符串长度
*/
function fucCheckLength(strTemp)
{
 var i,sum;
 sum=0;
 for(i=0;i<strTemp.length;i++)
 {
  if ((strTemp.charCodeAt(i)>=0) && (strTemp.charCodeAt(i)<=255))
   sum=sum+1;
  else
   sum=sum+2;
 }
 return sum;
}

/**
函数名称:Trim
函数功能:去掉输入字符串左右两边的空格
输入参数:字符串
返回参数:字符串
*/
function Trim(sInputString)
{
    var sTmpStr = " ";
    var i = -1;
    while (sTmpStr == " ")
    {
      ++i;
      sTmpStr = sInputString.substr(i,1);
    }
    sInputString = sInputString.substring(i);

    sTmpStr = " ";
    i = sInputString.length;
    while (sTmpStr == " ")
    {
      --i;
      sTmpStr = sInputString.substr(i,1);
    }
    sInputString = sInputString.substring(0,i+1);
    return sInputString;
}

/**
函数名称:isIpAddress
函数功能:判断输入字符串是不是符合规范的IP地址
输入参数:需要测试的字符串
返回参数:是IP地址:true 不是IP地址:false
*/
function isIpAddress(s)
{
     var pattern=/(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])/;
   if(!pattern.exec(s))
   {
     alert("IP地址不正确");
     return false;
   }
      return true;
}
/**
函数名称:isip
函数功能:判断输入字符串是不是符合规范的IP地址
输入参数:需要测试的字符串
返回参数:是IP地址:true 不是IP地址:false
*/
function isip(s)
{
    var patrn=/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/;
    //var patrn=/^[0-9.]{1,20}$/;
    if(!patrn.exec(s))
    {return false}
    return true
}
/**
函数名称:isCoordinate
函数功能:判断输入字符串是不是符合规范的坐标
输入参数:需要测试的字符串
返回参数:是坐标:true 不是坐标:false
*/
function isCoordinate (s)
{
   var pattern=/([1-9]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\,([1-9]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])/;
   if(!pattern.exec(s))
   {     
     return false;
   }
      return true;
}

/**
是否是邮政编码『中国』
*/
function isAreaCode(s)
{
  var patrn=/^[0]{1}[1-9]{1}[0-9]{1,2}$/;
  var str = Trim(s);
  if (patrn.exec(str)) return true;
  return false;
}

/**
函数名称:isPhoneNumber
函数功能:判断输入字符串是不是符合规范的固定电话号码
判断规范:1-20位的数字或"-"线
输入参数:需要测试的字符串
返回参数:是电话号码:true 不是电话号码:false
*/
function isPhoneNumber(s)
{
    var patrn=/^([0-9]|[-]|[,]){1,40}$/;
    if (!patrn.exec(s))
    {
        return false;
    }
    return true;
}

/**
函数名称:samePassword
函数功能:判断输入两个字符串是不是相同
输入参数:需要测试的两个字符串
返回参数:相同:true 不同:false
*/
function samePassword(t,s)
{
    if(t != s)
    {
        return false;
    }
    return true;
}

/**
函数名称:ismobile
函数功能:判断输入字符串是不是符合规范的手机号码(不包括小灵通)
判断规范:以13开头
输入参数:需要测试的字符串
返回参数:是手机号码:true 不是手机号码:false
*/
function ismobile(s)
{
    var patrn=/^(13)[0-9]{9}$/;
    //var patrn1=/^(159)[0-9]{8}$/;
    var patrn1=/^(15)[0-9]{9}$/;
    var patrn2=/^(18)[0-9]{9}$/;
    if (!patrn.exec(s) && !patrn1.exec(s) && !patrn2.exec(s))
    {
       return false;
    }
    return true;
}

/**
函数名称:isEmail
函数功能:判断输入字符串是不是符合规范的邮箱地址
输入参数:需要测试的字符串
返回参数:是邮箱地址:true 不是邮箱地址:false
*/
function isEmail(a)
{
 var i=a.length;
 var temp = a.indexOf('@');
 var tempd = a.indexOf('.');
 if (temp > 1) {
  if ((i-temp) > 3) {
   if (tempd!=-1) {
    return true;
   }
  }
}
 return false;
}

/**
函数名称:isDigit
函数功能:判断输入字符串是不是1-32位的数字
输入参数:需要测试的字符串
返回参数:是:true 不是:false
*/
function isDigit(s)
{
  var patrn=/^[0-9]{1,32}$/;
  var str = Trim(s);
  if (!patrn.exec(str)) return false;
  return true;
}

function isImbalanceCoef(s)
{
  var patrn=/^[0-9]{1,2}$/;
  var str = Trim(s);
  if (!patrn.exec(str)) return false;
  return true;
}

function isPrior(s){
  var patrn=/^[1-9]{1}$/;
  var str = Trim(s);
  if (!patrn.exec(str)) return false;
  return true;    
}

/**
函数名称:fnIsIntNum
函数功能:判断输入字符串是不是正整数字符串
输入参数:需要测试的字符串
返回参数:是:true 不是:false
*/
function fnIsIntNum(strNum)
{
 var strCheckNum = strNum + "";
 if(strCheckNum.length < 1)         //空字符串
  return false;
 else if(isNaN(strCheckNum))         //不是数值
  return false;
 else if(parseInt(strCheckNum,10) < 0)       //不是正数
  return false;
 else if(parseFloat(strCheckNum) > parseInt(strCheckNum,10)) //不是整数
  return false;

 return true;
}

function isLitteNumber(s)
{
  var patrn=/^[0]{1}[.]{1}[0-9]{1,4}$/;
  var str = Trim(s);
  if (patrn.exec(str)) return true;
  return false;
}

/**
函数名称:isProportions
函数功能:判断输入字符串是不是0-100的小数
输入参数:需要测试的字符串
返回参数:是:true 不是:false
*/
function isProportions(s)
{
  var patrn=/^[0-9]{1,2}$/;
  var patrn1=/^[0-9]{1,2}[.]{1}[0-9]{1,2}$/;
  var patrn2=/^[100]{1}[.0]{0,1}$/;
  var str = Trim(s);
  if (patrn.exec(str)||patrn1.exec(str)) return true;
  return false;
}
/**
是否是邮政编码『中国』
*/
function isPostCode(s)
{
  var patrn=/^[1-9]{1}[0-9]{5}$/;
  var str = Trim(s);
  if (patrn.exec(str)) return true;
  return false;
}
/**
是否是验证码
*/
function isValidCode(s)
{
  var patrn=/^[0-9]|[a-z]|[A-Z]{6}$/;
  var str = Trim(s);
  if (patrn.exec(str)) return true;
  return false;
}
/**
是否是当次点数
*/
function isThisTimePoints(s)
{
  var patrn=/^[0-9]{1,4}$/;
  var str = Trim(s);
  if (patrn.exec(str)) return true;
  return false;
}
/**
费用
*/
function isFee(s)
{
    var patrn=/^[0-9]{1,6}$/;
  var patrn1=/^[0-9]{1,6}[.]{1}$/;
  var patrn2=/^[.]{1}[0-9]{1,2}$/;
  var patrn3=/^[0-9]{1,6}[.]{1}[0-9]{1,2}$/;
  var str = Trim(s);
  if (patrn.exec(str) || patrn1.exec(str) || patrn2.exec(str) ||patrn3.exec(str)) return true;
  return false;
}
/**
函数名称:IsTimeValid
函数功能:判断输入字符串是不是时间,例如:12:33,12:33-14:23
输入参数:需要测试的字符串
返回参数:是:true 不是:false
*/
function IsTimeValid(str)
{
    if(str == "")
    return true;
    var patrn =/^([0-9]|[-]|[,]|[:]){1,150}$/;
    if(!patrn.exec(str))
    {alert("时间段格式不正确");return false;}
    var tempTimeSeg = str.split(",");
    for(var i=0;i<tempTimeSeg.length;i++)
    {
     var d = /\-/;
     var j = -1;
     j = tempTimeSeg[i].search(d);
     if(j==-1)
     {checktime(tempTimeSeg[i]);}
     else
     {
     var temp = tempTimeSeg[i].split("-");
     if(temp.length !=2 )
     {alert("时间段输入格式不正确");return false;}
     else
     {checktime(temp[0]);checktime(temp[1]);}}
    }
    return true;
}

/**
函数名称:IsDateValid
函数功能:判断输入字符串是不是日期,例如:1,12-23,23-
输入参数:需要测试的字符串
返回参数:是:true 不是:false
*/
function IsDateValid(str)
{
    if (str == "")
    return true;
    var tempDateSeg = str.split(",");
    for(var i=0;i<tempDateSeg.length;i++)
    {
        var dateSplit = tempDateSeg[i].split("-");
        if(dateSplit.length == 2)
        {
          var temp1 = Trim(dateSplit[0]);
          var temp2 = Trim(dateSplit[1]);
          if(fnIsIntNum(temp1))
          {
            if(parseInt(temp1,10)<=0 || parseInt(temp1,10)>31)
              return false;
          }
          else
             return false;
          if(temp2 != "")
          {
            if(fnIsIntNum(temp2))
            {
              if(parseInt(temp2,10)<=0 || parseInt(temp2,10)>31)
                return false;
            }
            else
              return false;
          }
        }
        else if(dateSplit.length == 1)
        {
          var temp3 = Trim(dateSplit[0]);
          if(fnIsIntNum(temp3))
          {
             if(parseInt(temp3,10)<=0 || parseInt(temp3,10)>31)
                return false;
          }
          else
            return false;
        }
        else
          return false;
    }
    return true;
}
/**
函数名称:filterCharacter
函数功能:判断是否输入了特殊字符
输入参数:需要测试的字符串
返回值:是 true 否 false
*/

function filterCharacter(s)
{
    //var patrn=/[']+[!]?[@]+[;]+[:]+[+]+[=]+[-]+[_]+[\#]+[[]+[]]+[%]+[^]+[&]+[*]+[(]+[)]+[~]+[`]+[\]+[\]+[?]+[<]+[>]+[/]+[,]+["]+[.]+[{]+[}]+[&gt;]+[&lt;]+[\f]+[\n]+[\r]+[\t]+[\v]+/;
    var patrn=/[!@#$%^&*()~`+_';:",./<>?{}()-]/;
    if(patrn.exec(s))
    {
      alert("输入不能含有以下字符 '!@#$%^*()~`-_+=|:;,.?/{}\&gt;&lt;\f\n\r\t\v");
      return true;
    }
    return false;
}

/**
*函数名称:CheckDate
*函数功能:判断结束日期是否大于起始日期
*输入参数:起始日期dates和结束日期datee
*返回值:是 true 否 false
*/
 function CheckDate(datee,dates)
 {
     arrDates = dates.split("-");
     arrDatee = datee.split("-");
     if(arrDates.length != 3 ||arrDatee.length != 3)
     {
          return false;
     }
     if(fnIsIntNum(arrDates[0]) && fnIsIntNum(arrDates[1]) && fnIsIntNum(arrDates[2]) &&fnIsIntNum(arrDatee[0]) && fnIsIntNum(arrDatee[1]) && fnIsIntNum(arrDatee[2]))   //是整数
     {
             
        var yy = parseInt(arrDates[0],10);
        var mm = parseInt(arrDates[1],10);
        var dd = parseInt(arrDates[2],10);
          if(parseInt(arrDatee[0],10) > yy)
          {
          return true;
          }
          else if(parseInt(arrDatee[0],10) == yy)
        {
           if(parseInt(arrDatee[1],10) > mm)
           {
               return true;
           }
           else if(parseInt(arrDatee[1],10) == mm)
           {
               if(parseInt(arrDatee[2],10) > dd)
               {
                      return true;
               }
               
           }
        }
        return false;
     }
     return false;
 }
 /**
*函数名称:timecompare
*函数功能:判断结束时间是否大于起始时间
*输入参数:时间段
*返回值:是 true 否 false
*/
 function timecompare(time)
{
     arrtime = time.split("-");
     arrtime0 = arrtime[0].split(":");
     arrtime1 = arrtime[1].split(":");

     var yy = parseInt(arrtime0[0],10);
     var mm = parseInt(arrtime0[1],10);

          if(parseInt(arrtime1[0],10) > yy)
          {
          return true;
          }
          else if(parseInt(arrtime1[0],10) == yy)
       {
           if(parseInt(arrtime1[1],10) > mm)
           {
               return true;
           }

           return false;
       }
}
//功能:日期检查函数。
//  正确的日期格式为:2001-2-13,日期范围为 0001-1-1 到 9999-12-31
//  同时,对当前年当前月的天数也做了判断,如:2001-2-29 2001-4-31 都是非法的日期
//参数:strDate ---- 需要判断的日期字符串
//返回值:true ---- 日期合法 false ---- 日期不合法
function fnCheckDate(strDate)
{
 var strCheckDate = strDate + "";     //进一步确认哪来判断的肯定是一串字符串

 if(strCheckDate == "")        //空字符串,不是合法的日期字符串,返回false
 {
  return true;
 }

 //判断传进来的数据是那种格式写成日期
 var arrDate;          //分别存储年月日
 var pattern = /^(\d{4})-(\d{1,2})-(\d{1,2})$/g;
 if(!pattern.test(strCheckDate))
     {//alert("日期正确格式为:yyyy-MM-dd");
      return false;}

 arrDate = strCheckDate.split("-");    //2001-3-7 型
 //判断月是否合法
 if(parseInt(arrDate[1],10) < 1 || parseInt(arrDate[1],10) > 12)
    {
     //alert("月份必须在1到12间!");
     return false;
    }

 //判断日是否合法
 var intDayCount = fnComputerDay(parseInt(arrDate[0],10),parseInt(arrDate[1],10));
    if(intDayCount < parseInt(arrDate[2],10) || parseInt(arrDate[2],10) < 1)
    {
     //alert("请输入正确天数!");
     return false;
    }
 return true;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值