常用javascript函数3

原创 2007年10月15日 11:00:00

原文:http://www.52sdn.com/artid/391/391503.html

/*********************************************************************************
* EO_JSLib.js
* javascript正则表达式检验
**********************************************************************************/


//校验是否全由数字组成
function isDigit(s)
{
 var patrn=/^[0-9]{1,20}$/;
 if (!patrn.exec(s)) return false
 return true
}

//校验登录名:只能输入5-20个以字母开头、可带数字、“_”、“.”的字串
function isRegisterUserName(s)
{
 var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;
 if (!patrn.exec(s)) return false
 return true
}

//校验用户姓名:只能输入1-30个以字母开头的字串
function isTrueName(s)
{
 var patrn=/^[a-zA-Z]{1,30}$/;
 if (!patrn.exec(s)) return false
 return true
}

//校验密码:只能输入6-20个字母、数字、下划线
function isPasswd(s)
{
 var patrn=/^(/w){6,20}$/;
 if (!patrn.exec(s)) return false
 return true
}

//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”
function isTel(s)
{
 //var patrn=/^[+]{0,1}(/d){1,3}[ ]?([-]?(/d){1,12})+$/;
 var patrn=/^[+]{0,1}(/d){1,3}[ ]?([-]?((/d)|[ ]){1,12})+$/;
 if (!patrn.exec(s)) return false
 return true
}

//校验手机号码:必须以数字开头,除数字外,可含有“-”
function isMobil(s)
{
 var patrn=/^[+]{0,1}(/d){1,3}[ ]?([-]?((/d)|[ ]){1,12})+$/;
 if (!patrn.exec(s)) return false
 return true
}

//校验邮政编码
function isPostalCode(s)
{
 //var patrn=/^[a-zA-Z0-9]{3,12}$/;
 var patrn=/^[a-zA-Z0-9 ]{3,12}$/;
 if (!patrn.exec(s)) return false
 return true
}

//校验搜索关键字
function isSearch(s)
{
 var patrn=/^[^`~!@#$%^&*()+=|///][/]/{/}:;/'/,.<>/?]{1}[^`~!@$%^&()+=|///][/]/{/}:;/'/,.<>?]{0,19}$/;
 if (!patrn.exec(s)) return false
 return true
}

function isIP(s) //by zergling
{
 var patrn=/^[0-9.]{1,20}$/;
 if (!patrn.exec(s)) return false
 return true
}
 
 
/*********************************************************************************
* FUNCTION: isBetween
* PARAMETERS: val AS any value
* lo AS Lower limit to check
* hi AS Higher limit to check
* CALLS: NOTHING
* RETURNS: TRUE if val is between lo and hi both inclusive, otherwise false.
**********************************************************************************/
function isBetween (val, lo, hi)
{
 if ((val < lo) || (val > hi)) { return(false); }
 else { return(true); }
}

/*********************************************************************************
* FUNCTION: isDate checks a valid date
* PARAMETERS: theStr AS String
* CALLS: isBetween, isInt
* RETURNS: TRUE if theStr is a valid date otherwise false.
**********************************************************************************/
function isDate (theStr)
{
 var the1st = theStr.indexOf('-');
 var the2nd = theStr.lastIndexOf('-');

 if (the1st == the2nd) { return(false); }
 else
 {
  var y = theStr.substring(0,the1st);
  var m = theStr.substring(the1st+1,the2nd);
  var d = theStr.substring(the2nd+1,theStr.length);
  var maxDays = 31;

  if (isInt(m)==false || isInt(d)==false || isInt(y)==false)
  {
   return(false);
  }
  else if (y.length < 4) { return(false); }
  else if (!isBetween (m, 1, 12)) { return(false); }
  else if (m==4 || m==6 || m==9 || m==11) maxDays = 30;
  else if (m==2)
  {
   if (y % 4 > 0) maxDays = 28;
   else if (y % 100 == 0 && y % 400 > 0) maxDays = 28;
   else maxDays = 29;
  }
  if (isBetween(d, 1, maxDays) == false)
  {
   return(false);
  }
  else
  {
   return(true);
  }
 }
}
/*********************************************************************************
* FUNCTION: isEuDate checks a valid date in British format
* PARAMETERS: theStr AS String
* CALLS: isBetween, isInt
* RETURNS: TRUE if theStr is a valid date otherwise false.
**********************************************************************************/
function isEuDate (theStr)
{
 if (isBetween(theStr.length, 8, 10) == false) { return(false); }
 else
 {
  var the1st = theStr.indexOf('/');
  var the2nd = theStr.lastIndexOf('/');

  if (the1st == the2nd)
  {
   return(false);
  }
  else
  {
   var m = theStr.substring(the1st+1,the2nd);
   var d = theStr.substring(0,the1st);
   var y = theStr.substring(the2nd+1,theStr.length);
   var maxDays = 31;

   if (isInt(m)==false || isInt(d)==false || isInt(y)==false)
   {
    return(false);
   }
   else if (y.length < 4) { return(false); }
   else if (isBetween (m, 1, 12) == false) { return(false); }
   else if (m==4 || m==6 || m==9 || m==11) maxDays = 30;
   else if (m==2) {
    if (y % 4 > 0) maxDays = 28;
    else if (y % 100 == 0 && y % 400 > 0) maxDays = 28;
    else maxDays = 29;
   }

   if (isBetween(d, 1, maxDays) == false)
   { 
    return(false);
   }
   else { return(true); }
  }
 }

}
/********************************************************************************
* FUNCTION: Compare Date! Which is the latest!
* PARAMETERS: lessDate,moreDate AS String
* CALLS: isDate,isBetween
* RETURNS: TRUE if lessDate<moreDate
*********************************************************************************/
function isComdate (lessDate , moreDate)
{
 if (!isDate(lessDate)) { return(false);}
 if (!isDate(moreDate)) { return(false);}
 var less1st = lessDate.indexOf('-');
 var less2nd = lessDate.lastIndexOf('-');
 var more1st = moreDate.indexOf('-');
 var more2nd = moreDate.lastIndexOf('-');
 var lessy = lessDate.substring(0,less1st);
 var lessm = lessDate.substring(less1st+1,less2nd);
 var lessd = lessDate.substring(less2nd+1,lessDate.length);
 var morey = moreDate.substring(0,more1st);
 var morem = moreDate.substring(more1st+1,more2nd);
 var mored = moreDate.substring(more2nd+1,moreDate.length);
 var Date1 = new Date(lessy,lessm,lessd);
 var Date2 = new Date(morey,morem,mored);
 if (Date1>Date2) { return(false);}
 return(true);

}

/*********************************************************************************
* FUNCTION isEmpty checks if the parameter is empty or null
* PARAMETER str AS String
**********************************************************************************/
function isEmpty (str) {
 if ((str==null)||(str.length==0)) return true;
 else return(false);
}

/*********************************************************************************
* FUNCTION: isInt
* PARAMETER: theStr AS String
* RETURNS: TRUE if the passed parameter is an integer, otherwise FALSE
* CALLS: isDigit
**********************************************************************************/
function isInt (theStr) {
 var flag = true;

 if (isEmpty(theStr)) { flag=false; }
 else
 {
  for (var i=0; i<theStr.length; i++)
  {
   if (isDigit(theStr.substring(i,i+1)) == false)
   {
    flag = false; break;
   }
  }
 }
 return(flag);
}

/*********************************************************************************
* FUNCTION: isReal
* PARAMETER: heStr AS String
decLen AS Integer (how many digits after period)
* RETURNS: TRUE if theStr is a float, otherwise FALSE
* CALLS: isInt
**********************************************************************************/
function isReal (theStr, decLen) {
 var dot1st = theStr.indexOf('.');
 var dot2nd = theStr.lastIndexOf('.');
 var OK = true;

 if (isEmpty(theStr)) return false;

 if (dot1st == -1)
 {
  if (!isInt(theStr)) return(false);
  else return(true);
 }

 else if (dot1st != dot2nd) return (false);
 else if (dot1st==0) return (false);
 else {
  var intPart = theStr.substring(0, dot1st);
  var decPart = theStr.substring(dot2nd+1);

  if (decPart.length > decLen) return(false);
  else if (!isInt(intPart) || !isInt(decPart)) return (false);
  else if (isEmpty(decPart)) return (false);
  else return(true);
 }
}

/*********************************************************************************
* FUNCTION: isEmail
* PARAMETER: String (Email Address)
* RETURNS: TRUE if the String is a valid Email address
* FALSE if the passed string is not a valid Email Address
* EMAIL FORMAT:

 

JavaScript常用方法函数收集(验证类居多)

收集了一些比较常用的javascript函数。 注意:以下方法主要来源于网络,有些方法的实现并不完善,甚至有的方法可能存在bug,因此仅作参考!!! 检查校验 在div:SceneTipbox中...
  • LSTting
  • LSTting
  • 2016年11月16日 10:58
  • 633

原生javascript自己封装的常用小方法。

var zycTools = { //使用css选择器选择单个元素 $:function(elem){ return document.querySelector(el...
  • CodingNoob
  • CodingNoob
  • 2017年03月20日 17:35
  • 764

js常用内置函数

摘要:JavaScript是一种灵活的语言,这有时使它名声较差,但是往好的一面看,它也向您提供了快速、创造性地编写代码的能力。它提供的属性和方法仅仅是可以实现功能的开始是您的想象力创建了自定义功能。因...
  • u012169411
  • u012169411
  • 2013年09月18日 18:32
  • 2896

python3 自带常用函数

import sys #每导入一次执行一次 #reload(sys) 再三里面被干掉了 py2里面可以这样玩 def foo(x,y): ''' 自动实现 点击 ctrl+q ...
  • w739639550
  • w739639550
  • 2017年07月24日 18:42
  • 172

常用js函数--个人项目总结

chatRecordsListHTML = chatRecordsListHTML.replace(/\/g,'"/>'); \S 非空字符串 //发送消息成功,添加到消息框 chatRecord...
  • curiouslearnerdhh
  • curiouslearnerdhh
  • 2015年06月16日 17:04
  • 923

你不知道的JavaScript(八)逻辑运算

JS的逻辑运算结果和其他一些强类型语言差别比较大,也比较容易让人产生困惑,看下面的例子:...
  • Rongbo_J
  • Rongbo_J
  • 2015年05月23日 09:54
  • 614

js常用功能汇总

1.多个class节点遍历: $(".department").each(function() { var $this = $(this); alert($this.val())...
  • tomcat_2014
  • tomcat_2014
  • 2016年04月15日 19:08
  • 2157

19 个常用的 JavaScript 简写方法

(点击上方公众号,可快速关注)作者:SangSirhttps://segmentfault.com/a/11900000126738541.三元操作符当想写 if...else 语句时,使用三元操作符...
  • VhWfR2u02Q
  • VhWfR2u02Q
  • 2018年01月07日 00:00
  • 177

JavaScript中的一些常用事件

1.onclick事件 点击事件(onclick并不是js中的方法,onclick只是浏览器提供js的一个dom接口,让js可以操作dom,所以onclick大小写都是没问题的,比如HTML代码就不用...
  • u012027874
  • u012027874
  • 2016年07月16日 23:49
  • 2459

项目中常用js方法整理common.js

抽空把项目中常用js方法整理成了common.js,都是网上搜集而来的,大家一起分享吧。 [javascript] view plain copy  print? ...
  • youyou_yo
  • youyou_yo
  • 2016年08月03日 14:59
  • 545
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:常用javascript函数3
举报原因:
原因补充:

(最多只允许输入30个字)