< temp.length; i++) {value = temp;}return value;}67 清除空格String.prototype.trim = function() {var reExtraSpace = /^s*(.*?)s+$/;return this.replace(reExtraSpace, "$1");};// 清除左空格function ltrim(s) {return s.replace(/^(s*| *)/, "");}// 清除右空格function rtrim(s) {return s.replace(/(s*| *)$/, "");}
68 随机数时间戳function uniqueId() {var a = Math.random,b = parseInt;return (Number(new Date()).toString() + b(10 * a()) + b(10 * a()) + b(10 * a()));}
69 实现utf8解码function utf8_decode(str_data) {var tmp_arr = [],i = 0,ac = 0,c1 = 0,c2 = 0,c3 = 0;str_data += "";while (i < str_data.length) {c1 = str_data.charCodeAt(i);if (c1 < 128) {tmp_arr[ac++] = String.fromCharCode(c1);i++;} else if (c1 > 191 && c1 < 224) {c2 = str_data.charCodeAt(i + 1);tmp_arr[ac++] = String.fromCharCode(((c1 & 31) << 6) | (c2 & 63));i += 2;} else {c2 = str_data.charCodeAt(i + 1);c3 = str_data.charCodeAt(i + 2);tmp_arr[ac++] = String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));i += 3;}}return tmp_arr.join("");}
以下的几个函数,用作常见的输入值校验和替换操作,主要针对中国大陆地区的校验规则:
70 校验是否为一个数字,以及该数字小数点位数是否与参数floats一致校验规则:
- 若参数floats有值,则校验该数字小数点后的位数 。
- 若参数floats没有值,则仅仅校验是否为数字 。
function isNum(value,floats=null){let regexp = new RegExp(`^[1-9][0-9]*.[0-9]{${floats}}$|^0.[0-9]{${floats}}$`);return typeof value =https://www.isolves.com/it/cxkf/yy/js/2020-08-05/== 'number' && floats?regexp.test(String(value)):true;}
function anysicIntLength(minLength,maxLength){let result_str = '';if(minLength){switch(maxLength){case undefined:result_str = result_str.concat(`{${minLength-1}}`);break;case null:result_str = result_str.concat(`{${minLength-1},}`);break;default:result_str = result_str.concat(`{${minLength-1},${maxLength-1}}`);}}else{result_str = result_str.concat('*');}return result_str;}
71 校验是否为非零的正整数function isInt(value,minLength=null,maxLength=undefined){if(!isNum(value)) return false;let regexp = new RegExp(`^-?[1-9][0-9]${anysicIntLength(minLength,maxLength)}$`);return regexp.test(value.toString());}
72 校验是否为非零的正整数function isPInt(value,minLength=null,maxLength=undefined) {if(!isNum(value)) return false;let regexp = new RegExp(`^[1-9][0-9]${anysicIntLength(minLength,maxLength)}$`);return regexp.test(value.toString());}
73 校验是否为非零的负整数function isNInt(value,minLength=null,maxLength=undefined){if(!isNum(value)) return false;let regexp = new RegExp(`^-[1-9][0-9]${anysicIntLength(minLength,maxLength)}$`);return regexp.test(value.toString());}
74 校验整数是否在取值范围内校验规则:- minInt为在取值范围中最小的整数
- maxInt为在取值范围中最大的整数
function checkIntRange(value,minInt,maxInt=9007199254740991){return Boolean(isInt(value) && (Boolean(minInt!=undefined && minInt!=null)?value>=minInt:true) && (value<=maxInt));}
75 校验是否为中国大陆传真或固定电话号码function isFax(str) {return /^([0-9]{3,4})?[0-9]{7,8}$|^([0-9]{3,4}-)?[0-9]{7,8}$/.test(str);}
76 校验是否为中国大陆手机号function isTel(value) {return /^1[3,4,5,6,7,8,9][0-9]{9}$/.test(value.toString());}
77 校验是否为邮箱地址function isEmail(str) {return /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+$/.test(str);}
78 校验是否为QQ号码校验规则:- 非0开头的5位-13位整数
function isQQ(value) {return /^[1-9][0-9]{4,12}$/.test(value.toString());}
79 校验是否为网址校验规则:- 以https://、http://、ftp://、rtsp://、mms://开头、或者没有这些开头
- 可以没有www开头(或其他二级域名),仅域名
- 网页地址中允许出现/%*?@&等其他允许的符
function isURL(str) {return /^(https://|http://|ftp://|rtsp://|mms://)?[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+[/=?%-&_~`@[]':+!]*([^<>""])*$/.test(str);}
80 校验是否为不含端口号的IP地址校验规则:IP格式为xxx.xxx.xxx.xxx,每一项数字取值范围为0-255
除0以外其他数字不能以0开头,比如02
function isIP(str) {return /^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9]).){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])$/.test(str);}
81 校验是否为IPv6地址校验规则:支持IPv6正常格式
支持IPv6压缩格式
function isIPv6(str){return Boolean(str.match(/:/g)?str.match(/:/g).length<=7:false && /::/.test(str)?/^([da-f]{1,4}(:|::)){1,6}[da-f]{1,4}$/i.test(str):/^([da-f]{1,4}:){7}[da-f]{1,4}$/i.test(str));}
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 一款MongoDB可视化数据管理工具,你值得拥有
- 拓扑图怎么画?一款好用可视化工具推荐
- ctop一款用于容器的top工具
- JAVA 开发工具Jcreator使用技巧总结
- 有这两款小工具,小白也能轻松搞定win10设置
- 开源内网穿透工具,支持https,网络开发好助手
- 文件同步工具 SyncTime for mac
- API接口管理,这15种开源工具助你管理API
- 渗透测试抓包工具-wireshark
- 附链接 2020年22个广泛使用的数据科学与机器学习工具