huruji / blog

红日初升,其道大光:sun_with_face::house_with_garden:请star或watch,不要fork
https://juejin.im/user/5894886f2f301e00693a3e49/posts
158 stars 11 forks source link

使用validator.js对字符串数据进行验证 #20

Open huruji opened 6 years ago

huruji commented 6 years ago

validator.js是一个对字符串进行数据验证和过滤的工具库,同时支持Node端和浏览器端,github地址是https://github.com/chriso/validator.js 主要API如下:

验证API

contains(str, seed)

验证str中是否含有seed

equals(str, comparison)

验证是否相等

isAfter(str[, date])

验证str是否是一个指定date之后的时间字符串,默认date为现在,与之相反的是isBefore方法

isBoolean(str)

检查是否是布尔值

isCreditCard(str)

检查是否是信用卡

isDivisibleBy(str, number)

检查str是否是一个可以被number整除的数字

isEmail(str [, options])

检查是否是邮件地址

isEmpty(str)

检查字符串是否为空

isFQDN(str[,options])

是否是域名

isFloat(str[, options])

是否是浮点数

isHash(str, algorithm)

是否是哈希值

isHexColor(str)

是否是十六进制颜色值,例如#ffffff

isHexadecimal(str)

是否是十六进制数字

isIP(str [, version])

是否是IP地址值,version为4或者6

isISBN(str [, version])

是否是ISBN号,version为10或者13

isInt(str [, options])

是否是整数

isJSON(str)

使用JSON.parse判断是否是json

isLength(str, options)

判断字符串的长度是否在一个范围内,options默认为{min:0, max: undefined}

isLowercase(str)

是否小写

isMACAddress(str)

是否是MAC地址

isMD5(str)

是否是MD5加密的哈希值

isMimeType(str)

是否是MIME type值

isMongoId(str)

是否是MongoDB的id值

isNumeric(str)

是否仅仅包含数字

isPort(str)

是否是一个端口号

isURL(str [, options])

是否是一个URL地址

isUppercase(str)

是否大写

matches(str, pattern [, modifiers])

是否匹配,利用match方法,其中匹配的模式可以作为第三个参数,当然也可以卸载正则表达式pattern中

过滤方法

blacklist(input, chars)

移除黑名单中的字符

escape(input)

对< > & ' " /进行HTML转义,与之相反的方法是unescape

ltrim(input [, chars])

对字符进行左缩进,与之对应的右缩进为rtrim方法,两端缩进trim

此外还有toBoolean、toDate、toFloat、toInt、whitelist