JavaScript判断字符长度、数字、Email、电话等常用判断函数分享


Posted in Javascript onApril 01, 2015
/****************************************************************
//* 名称:DataLength
//* 功  能:计算数据的长度
//* 入口参数:fData:需要计算的数据
//* 出口参数:返回fData的长度(Unicode长度为2,非Unicode长度为1)
//*****************************************************************
function DataLength(fData)
{
  var intLength=0
  for (var i=0;i<fData.length;i++)
  {
    if ((fData.charCodeAt(i) < 0) || (fData.charCodeAt(i) > 255))
      intLength=intLength+2
    else
      intLength=intLength+1  
  }
  return intLength
} 

//****************************************************************
//* 名
称:IsEmpty
//* 功  能:判断是否为空
//* 入口参数:fData:要检查的数据
//* 出口参数:True:空               
//*      False:非空
//*****************************************************************
function IsEmpty(fData)
{
  return ((fData==null) || (fData.length==0) )
} 


//****************************************************************
//* 名
称:IsDigit
//* 功  能:判断是否为数字
//* 入口参数:fData:要检查的数据
//* 出口参数:True:是0到9的数字               
//*      False:不是0到9的数字 
//*****************************************************************
function IsDigit(fData)
{
  return ((fData>="0") && (fData<="9"))
} 


//****************************************************************
//* 名
称:IsInteger
//* 功  能:判断是否为正整数
//* 入口参数:fData:要检查的数据
//* 出口参数:True:是整数,或者数据是空的              
//*      False:不是整数
//*****************************************************************
function IsInteger(fData)
{
  //如果为空,返回true
  if (IsEmpty(fData))
    return true
  if ((isNaN(fData)) || (fData.indexOf(".")!=-1) || (fData.indexOf("-")!=-1))
    return false  
  
  return true  
} 

//****************************************************************
//* 名
称:IsEmail
//* 功  能:判断是否为正确的Email地址
//* 入口参数:fData:要检查的数据
//* 出口参数:True:正确的Email地址,或者空               
//*      False:错误的Email地址
//*****************************************************************
function IsEmail(fData)
{
  if (IsEmpty(fData))
    return true
  if (fData.indexOf("@")==-1)
    return false
  var NameList=fData.split("@");
  if (NameList.length!=2)
    return false 
  if (NameList[0].length<1 )
    return false  
  if (NameList[1].indexOf(".")<=0)
    return false 
  if (fData.indexOf("@")>fData.indexOf(".")) 
 return false
  if (fData.indexOf(".")==fData.length-1)
 return false
  
  return true  
} 

//****************************************************************
//* 名
称:IsPhone
//* 功  能:判断是否为正确的电话号码(可以含"()"、"()"、"+"、"-"和空格)
//* 入口参数:fData:要检查的数据
//* 出口参数:True:正确的电话号码,或者空               
//*      False:错误的电话号码
//* 错误信息:
//*****************************************************************
function IsPhone(fData)
{
  var str;
  var fDatastr="";
  if (IsEmpty(fData))
    return true
  for (var i=0;i<fData.length;i++)
  {
    str=fData.substring(i,i+1);
    if (str!="(" && str!=")" && str!="(" && str!=")" && str!="+" && str!="-" && str!=" ")
      fDatastr=fDatastr+str;
  } 
  //alert(fDatastr); 
  if (isNaN(fDatastr))
    return false 
  return true  
} 

//****************************************************************
//* 名
称:IsPlusNumeric
//* 功  能:判断是否为正确的正数(可以含小数部分)
//* 入口参数:fData:要检查的数据
//* 出口参数:True:正确的正数,或者空               
//*      False:错误的正数
//* 错误信息:
//*****************************************************************
function IsPlusNumeric(fData)
{
  if (IsEmpty(fData))
    return true
  if ((isNaN(fData)) || (fData.indexOf("-")!=-1))
    return false 
  return true  
} 

//****************************************************************
//* 名
称:IsNumeric
//* 功  能:判断是否为正确的数字(可以为负数,小数)
//* 入口参数:fData:要检查的数据
//* 出口参数:True:正确的数字,或者空               
//*      False:错误的数字
//* 错误信息:
//*****************************************************************
function IsNumeric(fData)
{
  if (IsEmpty(fData))
    return true
  if (isNaN(fData))
    return false
    
  return true  
} 


//****************************************************************
//* 名
称:IsIntegerInRange
//* 功  能:判断一个数字是否在指定的范围内
//* 入口参数:fInput:要检查的数据
//*      fLower:检查的范围下限,如果没有下限,请用null
//*      fHigh:检查的上限,如果没有上限,请用null
//* 出口参数:True:在指定的范围内               
//*      False:超出指定范围
//*****************************************************************
function IsIntegerInRange(fInput,fLower,fHigh)
{
  if (fLower==null)
    return (fInput<=fHigh)
  else if (fHigh==null)
    return (fInput>=fLower) 
  else     
    return ((fInput>=fLower) && (fInput<=fHigh))
}
Javascript 相关文章推荐
Flash对联广告的关闭按钮讨论
Jan 30 Javascript
JS文本框不能输入空格验证方法
Mar 19 Javascript
jquery遍历checkbox的注意事项说明
Feb 21 Javascript
基于jQuery实现点击弹出层实例代码
Jan 01 Javascript
jQuery自定义数值抽奖活动代码
Jun 11 Javascript
仿Angular Bootstrap TimePicker创建分钟数-秒数的输入控件
Jul 01 Javascript
详解vue事件对象、冒泡、阻止默认行为
Mar 20 Javascript
React中嵌套组件与被嵌套组件的通信过程
Jul 11 Javascript
解决Vue在封装了Axios后手动刷新页面拦截器无效的问题
Nov 08 Javascript
微信 jssdk 签名错误invalid signature的解决方法
Jan 14 Javascript
JS立即执行函数功能与用法分析
Jan 15 Javascript
动态实现element ui的el-table某列数据不同样式的示例
Jan 22 Javascript
JavaScript判断是否为数字的4种方法及效率比较
Apr 01 #Javascript
JavaScript操作DOM元素的childNodes和children区别
Apr 01 #Javascript
JS使用oumousemove和oumouseout动态改变图片显示的方法
Mar 31 #Javascript
js使用onmousemove和onmouseout获取鼠标坐标的方法
Mar 31 #Javascript
JS显示下拉列表框内全部元素的方法
Mar 31 #Javascript
JS动态改变表格边框宽度的方法
Mar 31 #Javascript
60行js代码实现俄罗斯方块
Mar 31 #Javascript
You might like
分享PHP入门的学习方法
2007/01/02 PHP
php无限极分类实现的两种解决方法
2013/04/28 PHP
php数组(array)输出的三种形式详解
2013/06/05 PHP
php中strtotime函数用法详解
2014/11/15 PHP
jquery多浏览器捕捉回车事件代码
2010/06/22 Javascript
Yii-自定义删除确认弹框(zyd)jquery实现代码
2013/03/04 Javascript
JS保留两位小数,多位小数的示例代码
2014/01/07 Javascript
js插件设置innerHTML时在IE8下提示“未知运行时错误”解决方法
2015/04/25 Javascript
AngularJS基础 ng-keypress 指令简单示例
2016/08/02 Javascript
JavaScript数据操作_浅谈原始值和引用值的操作本质
2016/08/23 Javascript
jQuery之动画效果大全
2016/11/09 Javascript
javascript过滤数组重复元素的实现方法
2017/05/03 Javascript
浅谈Angular6的服务和依赖注入
2018/06/27 Javascript
Angular ui-roter 和AngularJS 通过 ocLazyLoad 实现动态(懒)加载模块和依赖
2018/11/25 Javascript
react配置antd按需加载的使用
2019/02/11 Javascript
记录一次开发微信网页分享的步骤
2019/05/07 Javascript
微信小程序图表插件wx-charts用法实例详解
2019/05/20 Javascript
如何测量vue应用运行时的性能
2019/06/21 Javascript
Vue 3.0 全家桶抢先体验
2020/04/28 Javascript
[03:48]显微镜下的DOTA2第四期——TP动作
2014/06/20 DOTA
[08:17]Ti9 现场cosplay
2019/09/10 DOTA
python web.py开发httpserver解决跨域问题实例解析
2018/02/12 Python
PyQt4实现下拉菜单可供选择并打印出来
2018/04/20 Python
django静态文件加载的方法
2018/05/20 Python
python3.7将代码打包成exe程序并添加图标的方法
2019/10/11 Python
团日活动总结范文
2014/04/25 职场文书
考试诚信承诺书
2014/05/23 职场文书
运动会加油口号
2014/06/07 职场文书
2014党员自我评议表范文
2014/09/20 职场文书
庆七一宣传标语
2014/10/08 职场文书
英文感谢信格式
2015/01/21 职场文书
安全主题班会教案
2015/08/12 职场文书
温馨祝福晨语:美丽的一天从我的问候开始
2019/11/28 职场文书
PyTorch的Debug指南
2021/05/07 Python
MySql 8.0及对应驱动包匹配的注意点说明
2021/06/23 MySQL
javascript的setTimeout()使用方法总结
2021/11/20 Javascript