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 相关文章推荐
js setTimeout()函数介绍及应用以倒计时为例
Dec 12 Javascript
jQuery中noConflict()用法实例分析
Feb 08 Javascript
jQuery DOM删除节点操作指南
Mar 03 Javascript
javascript实现复选框选中属性
Mar 25 Javascript
JS实现漂亮的淡蓝色滑动门效果代码
Sep 23 Javascript
js实现延时加载Flash的方法
Nov 26 Javascript
jQuery 局部div刷新和全局刷新方法总结
Oct 05 Javascript
微信小程序 template模板详解及实例
Feb 21 Javascript
jQuery EasyUI Accordion可伸缩面板组件使用详解
Feb 28 Javascript
vue项目webpack中Npm传递参数配置不同域名接口
Jun 15 Javascript
video.js 实现视频只能后退不能快进的思路详解
Aug 09 Javascript
微信小程序 可搜索的地址选择实现详解
Aug 28 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下删除一篇文章生成的多个静态页面
2010/08/08 PHP
以实例全面讲解PHP中多进程编程的相关函数的使用
2015/08/18 PHP
ThinkPHP项目分组配置方法分析
2016/03/23 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
2017/12/25 PHP
PHP自动识别当前使用移动终端
2018/05/21 PHP
PHP合并两个或多个数组的方法
2019/01/20 PHP
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
2019/12/20 PHP
表单项的name命名为submit、reset引起的问题
2007/12/22 Javascript
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
2009/03/21 Javascript
JavaScript 继承机制的实现(待续)
2010/05/18 Javascript
TinyMCE 新增本地图片上传功能
2010/11/05 Javascript
nodejs命令行参数处理模块commander使用实例
2014/09/17 NodeJs
配置Grunt的Task时通配符支持和动态生成文件名问题
2015/09/06 Javascript
Javascript之Date对象详解
2016/06/07 Javascript
React Native AsyncStorage本地存储工具类
2017/10/24 Javascript
详解webpack模块化管理和打包工具
2018/04/21 Javascript
微信小程序访问豆瓣电影api的实现方法
2019/03/31 Javascript
百度小程序之间的页面通信过程详解
2019/07/18 Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
2020/08/04 Javascript
vue 通过 Prop 向子组件传递数据的实现方法
2020/10/30 Javascript
python生成指定尺寸缩略图的示例
2014/05/07 Python
python线程、进程和协程详解
2016/07/19 Python
Python实现图片拼接的代码
2018/07/02 Python
将python包发布到PyPI和制作whl文件方式
2019/12/25 Python
使用pickle存储数据dump 和 load实例讲解
2019/12/30 Python
pandas数据拼接的实现示例
2020/04/16 Python
tensorflow 20:搭网络,导出模型,运行模型的实例
2020/05/26 Python
Hoover胡佛官网:美国吸尘器和洗地机品牌
2019/01/09 全球购物
在Ajax应用中信息是如何在浏览器和服务器之间传递的
2016/05/31 面试题
《小儿垂钓》教学反思
2014/02/23 职场文书
资金主管岗位职责范本
2014/03/04 职场文书
《青海高原一株柳》教学反思
2014/04/25 职场文书
机票销售员态度不好检讨书
2014/09/27 职场文书
2014年计生协会工作总结
2014/11/21 职场文书
用Python爬虫破解滑动验证码的案例解析
2021/05/06 Python
36个正则表达式(开发效率提高80%)
2021/11/17 Javascript