专栏首页忽如寄的前端周刊使用validator.js对字符串数据进行验证

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

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • IOS 使用Text Kit做排版

    1 let firstTextView = UITextView(frame:CGRect(x:20, y:40, width:135, height:200...

    用户5760343
  • [译]现代框架存在的根本原因

    我曾见过许多人盲目地使用像 React, Angular 或 Vue 这样的现代框架。这些框架提供了许多有趣的东西,但通常人们会忽略它们存在的根本原因。

    小生方勤
  • Object.assign()

    Object.assign方法用于对象的合并,将源对象(source)的所有可枚举属性,复制到目标对象(target)。

    李才哥
  • 聊聊sentinel的SentinelGatewayFilter

    Sentinel-1.6.2/sentinel-adapter/sentinel-spring-cloud-gateway-adapter/src/main/j...

    codecraft
  • JavaScript常用数组操作方法,包含ES6方法

    concat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,仅会返回被连接数组的一个副本。

    李才哥
  • (31)Vue安装

    https://github.com/vuejs/vue-devtools#vue-devtools

    达达前端
  • 聊聊dubbo的CacheFilter

    dubbo-2.7.2/dubbo-filter/dubbo-filter-cache/src/main/java/org/apache/dubbo/cache...

    codecraft
  • 看看你知道的“浅拷贝”是对的吗

    关于本篇文章的起源是一位大佬在面试的时候,询问应聘者关于浅拷贝的知识后,在应聘者的回答中,笔者发现有好一部分人对浅拷贝都是错误的,故有了此篇内容。

    小生方勤
  • Golang开源 - go-axios (HTTP Client) 入门

    日常开发中,各服务主要都是REST的形式提供接口服务,因此HTTP Client则是开发中的重中之重。 golang 中自带的HTTP Client已经能满足各...

    猿哥
  • Vue+Ionic4,知虎偏行(二)创建及配置项目

    安装ionic相关依赖(其中@ionic/core是组件部分,@ionic/vue是封装成Vue方式调用的接口部分):

    IT晴天

扫码关注云+社区

领取腾讯云代金券