求JS正则表达式

JavaScript07

求JS正则表达式,第1张

/**

 * 检验密码强度

 * @param string  {String}  要检查的密码字符串

 * @return  {Boolean}  返回true就是符合强度要求,false就是不符合

 */

var validate = function (string) {

    var rules = [

        /[A-Z]/,

        /[a-z]/,

        /\d/,

        /[!|@|#|$]/

    ]

    var count = 0

    for (var i = 0 i < rules.length i += 1) {

        if (rules[i].test(password))

            count += 0

    }

    return count > 2

}

您好,你的问题,我之前好像也遇到过,以下是我原来的解决思路和方法,希望能帮助到你,若有错误,还望见谅!首先对你关注用户体验的精神表示支持。

仅对于你的问题补充进行一下交流:

因为用户的录入方式还是比较花样繁多的,所以你的验证js也许还会面临一些挑战。

比如你既然想到了backspace键,那么对于delete键如何处理呢,如果当作非法键来处理的话,对于习惯小键盘录入数字的人来说还是不太舒服的。

或是用户选中文本框内一部分数字后按下backspace键,或是用户调用输入法,或是ctrl+v粘贴入文本......

当然我绝对不是在挑错找碴,只是提一些建议:

如果需要适应这些录入方式的话,必然要写很多的js代码,并且有一个问题:用户可以禁掉javascript。所以觉得对于验证而言,后台为主,js在前台为辅。我们的最终目的其实只有两种,对于正确录入值进行操作,对于错误值进行拦截。当然话说回来,如果你的需求确实是严苛的前台验证的话,那加油吧。

以上。非常感谢您的耐心观看,如有帮助请采纳,祝生活愉快!谢谢!

var count = 0

for(var i=1i<=50i++){

    if(document.getElementById('y'+i).checked==false&&document.getElementById('n'+i).checked==false){

        count+=1 

    }

}

//count就是记录遗漏题目的数量的

console.log(count)