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 相关文章推荐
javascript据option的value值快速设定初始的selected选项
Aug 13 Javascript
jQuery常用操作方法及常用函数总结
Jun 19 Javascript
node.js中的path.resolve方法使用说明
Dec 08 Javascript
jQuery中first()方法用法实例
Jan 06 Javascript
Jquery对select的增、删、改、查操作
Feb 06 Javascript
深入浅析JavaScript中数据共享和数据传递
Apr 25 Javascript
JavaScript实现简单精致的图片左右无缝滚动效果
Mar 16 Javascript
详解VUE的状态控制与延时加载刷新
Mar 27 Javascript
Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
Apr 22 Javascript
在Vue.js中使用TypeScript的方法
Mar 19 Javascript
uniapp 仿微信的右边下拉选择弹出框的实现代码
Jul 12 Javascript
springboot+vue实现文件上传下载
Nov 17 Vue.js
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读MYSQL中文乱码的解决方法
2006/12/17 PHP
PHP 第二节 数据类型之数组
2012/04/28 PHP
Yii学习总结之数据访问对象 (DAO)
2015/02/22 PHP
PHP+Mysql+jQuery文件下载次数统计实例讲解
2015/10/10 PHP
php微信开发自定义菜单
2016/08/27 PHP
PHP页面输出时js设置input框的选中值
2016/09/30 PHP
php+ajax实现商品对比功能示例
2019/04/13 PHP
JavaScript delete操作符应用实例
2009/01/13 Javascript
js下用eval生成JSON对象
2010/09/17 Javascript
JavaScript将Table导出到Excel实现思路及代码
2013/03/13 Javascript
解决html按钮切换绑定不同函数后点击时执行多次函数问题
2014/05/14 Javascript
js实现精美的银灰色竖排折叠菜单
2015/05/16 Javascript
jquery实现带缩略图的全屏图片画廊效果实例
2015/06/25 Javascript
AngularJS中过滤器的使用与自定义实例代码
2016/09/17 Javascript
AngularJS入门教程之数据绑定用法示例
2016/11/01 Javascript
纯原生js实现table表格的增删
2017/01/05 Javascript
JavaScript html5利用FileReader实现上传功能
2020/03/27 Javascript
微信小程序实现YDUI的ScrollTab组件
2018/02/02 Javascript
使用Vue做一个简单的todo应用的三种方式的示例代码
2018/10/20 Javascript
[04:52]第二届DOTA2亚洲邀请赛主赛事第一天比赛集锦:OG娜迦海妖放大配合谜团大中3人
2017/04/02 DOTA
Python3实现的Mysql数据库操作封装类
2018/06/06 Python
Linux下Pycharm、Anaconda环境配置及使用踩坑
2018/12/19 Python
解决Python计算矩阵乘向量,矩阵乘实数的一些小错误
2019/08/26 Python
python3 自动打印出最新版本执行的mysql2redis实例
2020/04/09 Python
Python列表去重复项的N种方法(实例代码)
2020/05/12 Python
详解Windows下PyCharm安装Numpy包及无法安装问题解决方案
2020/06/18 Python
python如何绘制疫情图
2020/09/16 Python
利用python+request通过接口实现人员通行记录上传功能
2021/01/13 Python
寒假实习自荐信
2014/01/26 职场文书
井冈山红色之旅感想
2014/10/07 职场文书
教师个人成长总结
2015/02/11 职场文书
通知范文怎么写
2015/04/16 职场文书
2015年学校食堂工作总结
2015/04/22 职场文书
家庭贫困证明
2015/06/16 职场文书
导游词之泉州崇武古城
2019/12/20 职场文书
netty 实现tomcat的示例代码
2022/06/05 Servers