u.validate = {}
/**
* @description 验证是否必填
* @param {String} input
*/
u.validate.required = function(input) {
return !u.isEmpty(input)
}
// 验证手机号码
u.validate.mobile = function(input) {
return /^1[34578][0-9]{9}$/.test(input)
}
// 验证座机号码
u.validate.fixedPhone = function(input) {
return /^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/.test(input)
}
// 验证手机或者座机号码
u.validate.phone = function(input) {
return u.validate.mobile(input) || u.validate.fixedPhone(input)
}
// 验证邮箱号码
u.validate.email = function(input) {
// ^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
return /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(input)
}
// 验证身份证号码
u.validate.IDcard = function(input) {
return /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/.test(input)
}
// 验证 url
u.validate.url = function(input) {
return /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/.test(input)
}
// 验证数字
u.validate.number = function(input) {
return /^(\+|-)?((0)|([1-9][0-9]*))$|^(\+|-)?((0)|([1-9][0-9]*)).[0-9]+$/.test(input)
}
// 验证整数(不包括0)
u.validate.integer = function(input) {
return /^(\+|-)?[1-9][0-9]*$/.test(input)
}
// 验证正整数(不包括0)
u.validate.positiveInteger = function(input) {
return /^\+?[1-9][0-9]*$/.test(input)
}
// 验证正数(不包括0)
u.validate.positive = function(input) {
return /^[1-9][0-9]*$|^((0)|([1-9][0-9]*)).[0-9]+$/.test(input)
}
// 验证精确到几位小数的正数(不包括0)
u.validate.positiveToFixed = function(input, digits) {
digits = digits || 2
var reg = new RegExp('^[1-9][0-9]*$|^((0)|([1-9][0-9]*)).[0-9]{' + digits + '}$')
return reg.test(input)
}
// 验证是否相等
u.validate.equal = function(input1, input2) {
return u.equal(input1, input2)
}
npm i sg-utils -S
https://github.com/shiguang0116/sg-utils
JavaScript工具类(一):util.js创建及上传
JavaScript工具类(二):cookie缓存
JavaScript工具类(三):localStorage本地储存
JavaScript工具类(四):数据类型
JavaScript工具类(五):string字符串
JavaScript工具类(六):number数字
JavaScript工具类(七):array数组
JavaScript工具类(八):object对象
JavaScript工具类(九):date日期
JavaScript工具类(十):base64编码、解码
JavaScript工具类(十一):浏览器、移动端类型
JavaScript工具类(十二):validate表单验证
JavaScript工具类(十三):url路径处理
JavaScript工具类(十四):json数据格式
JavaScript工具类:util.js用法实例