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 相关文章推荐
jQuery 1.3 和 Validation 验证插件1.5.1
Jul 09 Javascript
载入jQuery库的最佳方法详细说明及实现代码
Dec 28 Javascript
javascript eval(func())使用示例
Dec 05 Javascript
jquery ajax jsonp跨域调用实例代码
Dec 11 Javascript
动态加载iframe时get请求传递中文参数乱码解决方法
May 07 Javascript
node.js中的fs.read方法使用说明
Dec 17 Javascript
简单实现js页面切换功能
Jan 10 Javascript
jquery过滤特殊字符',防sql注入的实现方法
Aug 17 Javascript
Bootstrap标签页(Tab)插件使用方法
Mar 21 Javascript
详解Vue-cli3.X使用px2rem遇到的问题
Aug 09 Javascript
Vue+element+cookie记住密码功能的简单实现方法
Sep 20 Javascript
微信小程序:报错(in promise) MiniProgramError
Oct 30 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制作圆形用户头像的实例_自定义封装类源代码
2017/09/18 PHP
浅析PHP中的闭包和匿名函数
2017/12/25 PHP
javascript 模拟点击广告
2010/01/02 Javascript
一个XML格式数据转换为图表的例子
2010/02/09 Javascript
JS两种定义方式的区别、内部原理
2013/11/21 Javascript
JQuery中serialize()、serializeArray()和param()方法示例介绍
2014/07/31 Javascript
js验证上传图片的方法
2015/05/12 Javascript
javascript制作幻灯片(360度全景图片)
2015/07/28 Javascript
【经典源码收藏】jQuery实用代码片段(筛选,搜索,样式,清除默认值,多选等)
2016/06/07 Javascript
微信小程序 require机制详解及实例代码
2016/12/14 Javascript
js实现扫雷小程序的示例代码
2017/09/27 Javascript
Node.js npm命令运行node.js脚本的方法
2018/10/10 Javascript
基于JavaScript获取base64图片大小
2019/10/18 Javascript
详解微信小程序工程化探索之webpack实战
2020/04/20 Javascript
jQuery实现B2B网站后台管理系统侧导航
2020/07/08 jQuery
[59:15]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第一场 11.20
2020/11/20 DOTA
python实现彩色图转换成灰度图
2019/01/15 Python
Python 中如何实现参数化测试的方法示例
2019/12/10 Python
pytorch 实现删除tensor中的指定行列
2020/01/13 Python
python实现密度聚类(模板代码+sklearn代码)
2020/04/27 Python
python 使用多线程创建一个Buffer缓存器的实现思路
2020/07/02 Python
魔声耳机官方网站:Monster是世界第一品牌的高性能耳机
2016/10/26 全球购物
加州风格的游泳和沙滩装品牌:Cupshe
2019/06/10 全球购物
某公司面试题
2012/03/05 面试题
大学生职业规划前言模板
2013/12/27 职场文书
党校学习思想汇报
2014/01/06 职场文书
有多年工作经验的自我评价
2014/03/02 职场文书
潘婷洗发水广告词
2014/03/14 职场文书
保险内勤岗位职责
2014/04/05 职场文书
社团活动总结
2014/04/28 职场文书
市政工程技术专业自荐书
2014/07/06 职场文书
领导干部保密承诺书
2014/08/30 职场文书
工作收入住址证明
2014/10/28 职场文书
会计主管岗位职责
2015/04/02 职场文书
银行客户经理岗位职责
2015/04/09 职场文书
Django分页器的用法你都了解吗
2021/05/26 Python