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 document.execCommand() 常用解析
Dec 14 Javascript
深入剖析JavaScript中的枚举功能
Mar 06 Javascript
jquery访问ashx文件示例代码
Aug 11 Javascript
jQuery设置和移除文本框默认值的方法
Mar 09 Javascript
jQuery中Find选择器用法示例
Sep 21 Javascript
浅谈JS中的常用选择器及属性、方法的调用
Jul 28 Javascript
bootstrap表格内容过长时用省略号表示的解决方法
Nov 21 Javascript
详解Javascript中new()到底做了些什么?
Mar 29 Javascript
详解Vue单元测试case写法
May 24 Javascript
Vue中使用方法、计算属性或观察者的方法实例详解
Oct 31 Javascript
vue 组件中使用 transition 和 transition-group实现过渡动画
Jul 09 Javascript
微信小程序仿抖音短视频切换效果的实例代码
Jun 24 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
require(),include(),require_once()和include_once()的异同
2007/01/02 PHP
php下通过curl抓取yahoo boss 搜索结果的实现代码
2011/06/10 PHP
PhpMyAdmin出现export.php Missing parameter: what /export_type错误解决方法
2012/08/09 PHP
如何用php获取文件名后缀
2013/06/09 PHP
thinkphp实现图片上传功能分享
2014/03/04 PHP
PHP面向对象程序设计之接口用法
2014/08/20 PHP
Laravel 中获取上一篇和下一篇数据
2015/07/27 PHP
laravel框架数据库配置及操作数据库示例
2019/10/10 PHP
laravel框架语言包拓展实现方法分析
2019/11/22 PHP
基于jQuery图片平滑连续滚动插件
2009/04/27 Javascript
jquery validate.js表单验证的基本用法入门
2010/05/13 Javascript
javascript实现限制上传文件大小
2015/02/06 Javascript
JS实现的多张图片轮流播放幻灯片效果
2016/07/22 Javascript
Bootstrap Modal遮罩弹出层(完整版)
2016/11/21 Javascript
jQuery 中msgTips 顶部弹窗效果实现代码
2017/08/14 jQuery
iframe高度自适应及隐藏滚动条的实例详解
2017/09/29 Javascript
使用node.js实现微信小程序实时聊天功能
2018/08/13 Javascript
react实现移动端下拉菜单的示例代码
2020/01/16 Javascript
Python异常学习笔记
2015/02/03 Python
用python编写第一个IDA插件的实例
2018/05/29 Python
python tornado微信开发入门代码
2018/08/24 Python
Django+Xadmin构建项目的方法步骤
2019/03/06 Python
python线程的几种创建方式详解
2019/08/29 Python
tensorflow mnist 数据加载实现并画图效果
2020/02/05 Python
python获取响应某个字段值的3种实现方法
2020/04/30 Python
在python下实现word2vec词向量训练与加载实例
2020/06/09 Python
PyTorch中Tensor的数据类型和运算的使用
2020/09/03 Python
交通安全教育制度
2014/02/02 职场文书
学校搬迁方案
2014/06/15 职场文书
领导班子三严三实心得体会
2014/10/13 职场文书
2016年春季趣味运动会开幕词
2016/03/04 职场文书
php 解析非标准json、非规范json
2021/04/01 PHP
Memcached介绍及php-memcache扩展安装
2021/04/01 PHP
多表查询、事务、DCL
2021/04/05 MySQL
JavaScript实现简单拖拽效果
2021/09/15 Javascript
Python内置类型集合set和frozenset的使用详解
2022/04/26 Python