Les exemples de cet article décrivent deux méthodes d'utilisation de JS pour implémenter des niveaux de mot de passe contenant au moins des lettres, des chiffres majuscules et minuscules et des caractères. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :
Avant-propos
Les mots de passe peuvent être facilement déchiffrés s'ils sont définis trop simplement. C'est pourquoi de nombreux sites Web imposent des exigences très strictes en matière de mots de passe, généralement 2 lettres, chiffres et caractères sur 3, et sont sensibles à la casse. Si le mot de passe est trop simple, un message d'erreur sera affiché. Ou affichez le niveau de mot de passe (faible, moyen et élevé) pour permettre aux utilisateurs de définir des mots de passe avancés. Alors comment l’implémenter en utilisant JS ?
Le code d'implémentation est le suivant :
function passwordLevel(password) { var Modes = 0; for (i = 0; i < password.length; i++) { Modes |= CharMode(password.charCodeAt(i)); } return bitTotal(Modes); //CharMode函数 function CharMode(iN) { if (iN >= 48 && iN <= 57)//数字 return 1; if (iN >= 65 && iN <= 90) //大写字母 return 2; if ((iN >= 97 && iN <= 122) || (iN >= 65 && iN <= 90)) //大小写 return 4; else return 8; //特殊字符 } //bitTotal函数 function bitTotal(num) { modes = 0; for (i = 0; i < 4; i++) { if (num & 1) modes++; num >>>= 1; } return modes; } }
Utiliser
Utilisation normale
Syntaxe d'utilisation : passwordLevel(string)
Règles de validation : chiffres, lettres majuscules, lettres minuscules, caractères spéciaux
Résultat de la fonction : Renvoie le nombre de règles contenues dans le mot de passe
Exemple d'exécution :
passwordLevel("123456") //返回1 passwordLevel("Abc'123456") //返回4
Utiliser en combinaison avec jquery.validate.js :
//添加验证方法:至少包含两种规则 $.validator.addMethod("strongPsw",function(value,element){ if(passwordLevel(value)==1){returnfalse;} returntrue },"格式不符合"); //开始验证 $(".form").validate({ rules:{ pwd:{ required:true, //必填 minlength:6, //最小长度 maxlength:32, //最大长度 strongPsw:true, //密码强度 }, repwd:{ required:true, minlength:6, maxlength:32, equalTo:"#pwd" //再次填写密码需一致 } } });
Les amis intéressés par la génération de mots de passe et la détection de force peuvent également se référer à l'outil en ligne :
Détection en ligne de sécurité par mot de passe
Générateur de mot de passe fort
Outil de génération en ligne de liens courts (URL courtes)
J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.