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

JavaScript076

使用validator.js对字符串数据进行验证,第1张

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

主要API如下:

验证str中是否含有seed

验证是否相等

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

检查是否是布尔值

检查是否是信用卡

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

检查是否是邮件地址

检查字符串是否为空

是否是域名

是否是浮点数

是否是哈希值

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

是否是十六进制数字

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

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

是否是整数

使用JSON.parse判断是否是json

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

是否小写

是否是MAC地址

是否是MD5加密的哈希值

是否是MIME type值

是否是MongoDB的id值

是否仅仅包含数字

是否是一个端口号

是否是一个URL地址

是否大写

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

移除黑名单中的字符

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

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

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

javascript中等于(==)可以判断值是否一致,恒等于(===)用以判断值与类型是否都一致。所以验证字符串是否相等可以使用==或===,但是在涉及到变量类型时需要注意==与===的区别。

下面给出验证字符串相等的实例演示:

1、创建Html元素

<div class="box">

<span>实例演示:点击按钮验证两次输入的密码是否一致</span><br>

<div class="content">

请输入密码:<input type="text" id="pwd1"><br>

请重复密码:<input type="text" id="pwd2">

    <input id='btn' type='button' onclick='test()' value='提交' />

</div>

</div>

2、设置css样式

div.box{width:300pxpadding:20pxmargin:20pxborder:4px dashed #ccc}

div.box>span{color:#999font-style:italic}

div.content{width:250pxmargin:10px 0padding:20pxborder:2px solid #ff6666}

input[type='button']{height:30pxmargin:10pxpadding:5px 10px}

input[type='text']{width:100pxpadding:5px 10pxmargin:5px 0border:1px solid #ff9966}

3、编写jquery代码

function test(){

pwd1 = document.getElementById("pwd1").value

pwd2 = document.getElementById("pwd2").value

if(pwd1=="")

alert("请输入密码")

else if(pwd2=="")

alert("请重复密码")

else if(pwd2!==pwd1)

alert("两次密码输入不一致")

else

alert("验证通过")

}

4、观察效果

1、用正则表达式判断

<input type="text" id="name" placeholder="请输入用户名" value="" onblur="CheckChinese('name',this.value)" class="form-control">

function CheckIsChinese(obj,val){

var reg = new RegExp("[\\u4E00-\\u9FFF]+","g")

if(reg.test(val)){alert("包含汉字!")}

}

2、用 Unicode 字符范围判断

function chkstrlen(str){

var strlen = 0

for(var i = 0i <str.lengthi++){

if(str.charCodeAt(i) >255) //如果是汉字,则字符串长度加2

strlen += 2

else

strlen++

}

return strlen

}