经常用到的javascript验证函数收集_javascript技巧
建议大家收藏javascript验证函数,以后遇到就可以直接拿来用了
/*
==================================================================
是否为空,只判断字符串 null或0长为空,经过trim IsStringNull(string)
==================================================================
*/
function IsStringNull(str) { if (str == null) return true; var trimStr = Trim(str); if (trimStr.length == 0) return true; return false; }
/*
==================================================================
LTrim(string):去除左边的空格
==================================================================
*/
function LTrim(str) { var whitespace = new String(" \t\n\r"); var s = new String(str); if (whitespace.indexOf(s.charAt(0)) != -1) { var j = 0, i = s.length; while (j < i && whitespace.indexOf(s.charAt(j)) != -1) { j++; } s = s.substring(j, i); } return s; }
/*
==================================================================
RTrim(string):去除右边的空格
==================================================================
*/ function RTrim(str) { var whitespace = new String(" \t\n\r"); var s = new String(str); if (whitespace.indexOf(s.charAt(s.length - 1)) != -1) { var i = s.length - 1; while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1) { i--; } s = s.substring(0, i + 1); } return s; } /*
==================================================================
Trim(string):去除前后空格
==================================================================
*/ function Trim(str) { return RTrim(LTrim(str)); } /*
==================================================================
IsOutOfLength(string,int):判断字符串是长度是否超出长度,中文为2个字符
==================================================================
*/ function IsOutOfLength(str, len) { var strLength = 0; for (var i = 0; i < str.length; i++) { if (str.charCodeAt(i) > 256) { strLength++; } strLength++; if (strLength > len) { return true; } } return false; } /*
==================================================================
IsOutOfLength(string,int):判断字符串是长度是否超出长度,中文为3个字符
==================================================================
*/ function IsOutOfLength3(str, len) { var cArr = str.match(/[^\x00-\xff]/ig); var len_address = str.length + (cArr == null ? 0 : cArr.length * 2); if (len_address > len) return true; else return false; } /*
==================================================================
IsNumeric(string):判断字符串是是否为数字
==================================================================
*/ function IsNumeric(strNumber) { if (strNumber.length == 0) { return false; } return (strNumber.search(/^(-|\+)?\d+(\.\d+)?$/) != -1); } /*
==================================================================
IsInt(string,string,int or string):(测试字符串,+ or - or empty,empty or 0) 功能:判断是否为整数、正整数、负整数、正整数+0、负整数+0
=================================================================
*/ function IsInt(objStr, sign, zero) { var reg; var bolzero; if (Trim(objStr) == "") { return false; } else { objStr = objStr.toString(); } if ((sign == null) || (Trim(sign) == "")) { sign = "+-"; } if ((zero == null) || (Trim(zero) == "")) { bolzero = false; } else { zero = zero.toString(); if (zero == "0") { bolzero = true; } else { alert("检查是否包含0参数,只可为(空、0)"); } } switch (sign) { case "none": if (!bolzero) { reg = /^[0-9]*[1-9][0-9]*$/; } else { reg = /^[0-9]*[0-9][0-9]*$/; } break; case "+-": //整数 reg = /(^-?|^\+?)\d+$/; break; case "+": if (!bolzero) { //正整数 reg = /^\+?[0-9]*[1-9][0-9]*$/; } else { //正整数+0 //reg=/^\+?\d+$/; reg = /^\+?[0-9]*[0-9][0-9]*$/; } break; case "-": if (!bolzero) { //负整数 reg = /^-[0-9]*[1-9][0-9]*$/; } else { //负整数+0 //reg=/^-\d+$/; reg = /^-[0-9]*[0-9][0-9]*$/; } break; default: alert("检查符号参数,只可为(空、+、-)"); return false; break; } var r = objStr.match(reg); if (r == null) { return false; } else { return true; } } /*
==================================================================
checkIsValidDate(string) 功能:判断是否为正确的日期类型。必须为yyyy-MM-dd
=================================================================
*/ function checkIsValidDate(str) { //如果为空,则通过校验 if (str == "") return true; var pattern = /^\d{4}\/\d{1,2}\/\d{1,2}$/g; if (!pattern.test(str)) return false; //alert("【" +str+"】1"); var arrDate = str.split("/"); var date = new Date(arrDate[0], (parseInt(arrDate[1], 10) - 1) + "", parseInt(arrDate[2], 10) + ""); //alert("a:【" +date.getFullYear()+"】【" + date.getMonth() + "】【" + date.getDate() + "】"); //alert("b:【" +arrDate[0]+"】【" + parseInt(arrDate[1],10) + "】【" + parseInt(arrDate[2],10) + "】"); if (date.getFullYear() == arrDate[0] && date.getMonth() == (parseInt(arrDate[1], 10) - 1) + "" && date.getDate() == parseInt(arrDate[2], 10) + "") return true; else //alert("【" +str+"】2"); return false; } /*
==================================================================
checkIsValidTime(string) 功能:判断是否为正确的时间类型。必须为hh:mm:ss
=================================================================
*/ function checkIsValidTime(str) { //如果为空,则通过校验 if (str == "") return true; var pattern = /^\d{1,2}:\d{1,2}:\d{1,2}$/g; if (!pattern.test(str)) return false; //alert("【" +str+"】1"); return true; } /*
==================================================================
CheckedCount(containForm,chkFormName):计算一个form中选中相的数目 check表单包括radiobox和checkbox 参数:包含check项的form,check表单的名称
==================================================================
*/ function CheckedCount(containForm, chkFormName) { var chkCount = 0; for (i = 0; i < containForm.elements.length; i++) { if (containForm.elements[i].name == chkFormName) { if (containForm.elements[i].type == 'checkbox' || containForm.elements[i].type == 'radio') { if (containForm.elements[i].checked) { chkCount++; } } } } return chkCount; } /** * 判断是不是有效的email地址 */ function IsValidateEmail(str) { //如果为空,则通过校验 if (str == "" || str.length == 0) { return false; } //正则表达式 //var pattern = /^\w{1,}@[\.,\w]{1,}$/; var pattern = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/; if (!pattern.test(str)) { return false; } return true; } /** * 判断是不是有效的汉字 */ function checkIsHanzi(str) { //如果为空,则通过校验 if (str == "" || str.length == 0) { return true; } //正则表达式 var pattern = /[^\u4E00-\u9FA5]/g; if (pattern.test(str)) { return false; } return true; } /** * 判断是不是有效的英文字母+(空格) */ function checkIsLetter(str) { //如果为空,则通过校验 if (str == "" || str.length == 0) { return true; } //正则表达式 var pattern = /[^a-zA-Z\s]/g; if (pattern.test(str)) { return false; } return true; } /** *判断是不是有效的英文字母+(空格或点) */ function checkIsLetterOrSpaceDot(str) { //如果为空,则通过校验 if (str == "" || str.length == 0) { return true; } //正则表达式 var pattern = /[^a-zA-Z\s\.]/g; if (pattern.test(str)) { return false; } return true; } /** * 判断是不是有效的英文字母和数字 */ function checkIsLetterNumber(str) { //如果为空,则通过校验 if (str == "" || str.length == 0) { return true; } //正则表达式 var pattern = /[^a-zA-Z0-9\s]/g; if (pattern.test(str)) { return false; } return true; } /** * 判断是不是有效的数字(检查证件号码,密码用) */ function checkIsNumber(str) { //如果为空,则通过校验 if (str == "" || str.length == 0) { return true; } //正则表达式 var pattern = /[^0-9\s]/g; if (pattern.test(str)) { return false; } return true; } /** * 判断是不是有效的百分比数字 */ function checkIsPercent(str) { //如果为空,则通过校验 if (str == "" || str.length == 0) { return true; } //正则表达式 var pattern = /^[1-9][0-9]*%$/g; if (!pattern.test(str)) { return false; } return true; } /** * check is validate time */ function isValidateTime(str) { if (parseInt(str) == 0) { return true; } var regexp = /^(([0-9])|(0[0-9])|(1[0-9])|(2[0-3]))[0-5][0-9]$/ if (str == "" || str.length == 0) { return false; } if (!regexp.test(str)) { return false; } return true; } /** * 判断是不是有效的手机号码 * 格式正确返回true,否则false. */ function IsValidateMobile(str) { var pattern = /^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$/; if (str == '' || str.length == 0) { return false; } if (!pattern.test(str)) { return false; } return true; } /** * 判断是不是有效的电话号码; * 电话号码格式正确返回true,否则false. */ function IsValidatePhone(str) { var pattern = /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/; if (str == '' || str.length == 0) { return false; } if (!pattern.test(str)) { return false; } return true; } /** * 判断是不是有效的邮政编码; * 格式正确返回true,否则false. */ function IsValidateZipcode(str) { var pattern = /^[1-9]\d{5}$/; if (str == '' || str.length == 0) { return false; } if (!pattern.test(str)) { return false; } return true; }

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

不同JavaScript引擎在解析和执行JavaScript代码时,效果会有所不同,因为每个引擎的实现原理和优化策略各有差异。1.词法分析:将源码转换为词法单元。2.语法分析:生成抽象语法树。3.优化和编译:通过JIT编译器生成机器码。4.执行:运行机器码。V8引擎通过即时编译和隐藏类优化,SpiderMonkey使用类型推断系统,导致在相同代码上的性能表现不同。

Python更适合初学者,学习曲线平缓,语法简洁;JavaScript适合前端开发,学习曲线较陡,语法灵活。1.Python语法直观,适用于数据科学和后端开发。2.JavaScript灵活,广泛用于前端和服务器端编程。

从C/C 转向JavaScript需要适应动态类型、垃圾回收和异步编程等特点。1)C/C 是静态类型语言,需手动管理内存,而JavaScript是动态类型,垃圾回收自动处理。2)C/C 需编译成机器码,JavaScript则为解释型语言。3)JavaScript引入闭包、原型链和Promise等概念,增强了灵活性和异步编程能力。

JavaScript在Web开发中的主要用途包括客户端交互、表单验证和异步通信。1)通过DOM操作实现动态内容更新和用户交互;2)在用户提交数据前进行客户端验证,提高用户体验;3)通过AJAX技术实现与服务器的无刷新通信。

JavaScript在现实世界中的应用包括前端和后端开发。1)通过构建TODO列表应用展示前端应用,涉及DOM操作和事件处理。2)通过Node.js和Express构建RESTfulAPI展示后端应用。

理解JavaScript引擎内部工作原理对开发者重要,因为它能帮助编写更高效的代码并理解性能瓶颈和优化策略。1)引擎的工作流程包括解析、编译和执行三个阶段;2)执行过程中,引擎会进行动态优化,如内联缓存和隐藏类;3)最佳实践包括避免全局变量、优化循环、使用const和let,以及避免过度使用闭包。

Python和JavaScript在社区、库和资源方面的对比各有优劣。1)Python社区友好,适合初学者,但前端开发资源不如JavaScript丰富。2)Python在数据科学和机器学习库方面强大,JavaScript则在前端开发库和框架上更胜一筹。3)两者的学习资源都丰富,但Python适合从官方文档开始,JavaScript则以MDNWebDocs为佳。选择应基于项目需求和个人兴趣。

Python和JavaScript在开发环境上的选择都很重要。1)Python的开发环境包括PyCharm、JupyterNotebook和Anaconda,适合数据科学和快速原型开发。2)JavaScript的开发环境包括Node.js、VSCode和Webpack,适用于前端和后端开发。根据项目需求选择合适的工具可以提高开发效率和项目成功率。
