>  기사  >  웹 프론트엔드  >  JS가 최소한 문자, 대문자 및 소문자 숫자,character_javascript 기술을 포함하는 비밀번호 수준을 구현하는 두 가지 방법

JS가 최소한 문자, 대문자 및 소문자 숫자,character_javascript 기술을 포함하는 비밀번호 수준을 구현하는 두 가지 방법

WBOY
WBOY원래의
2016-05-16 16:16:141787검색

이 문서의 예에서는 JS를 사용하여 최소한 문자, 대문자 및 소문자 숫자, 문자를 포함하는 비밀번호 수준을 구현하는 두 가지 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 내용은 다음과 같습니다.

머리말

비밀번호는 너무 단순하게 설정하면 쉽게 깨질 수 있으므로 많은 웹사이트에서는 비밀번호에 대해 매우 엄격한 요구 사항을 설정하고 있습니다. 일반적으로 문자, 숫자, 문자 3개 중 2개를 사용하고 대소문자를 구분합니다. 비밀번호를 너무 간단하게 설정하면 오류 메시지가 표시됩니다. 또는 사용자가 고급 비밀번호를 설정할 수 있도록 비밀번호 수준(낮음, 중간, 높음)을 표시합니다. 그렇다면 JS를 사용하여 구현하는 방법은 무엇입니까?

구현 코드는 다음과 같습니다.

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;
 }
}

사용

일반적인 사용

사용 구문: 비밀번호레벨(문자열)
유효성 검사 규칙: 숫자, 대문자, 소문자, 특수 문자
함수 결과: 비밀번호에 포함된 규칙의 개수를 반환합니다
실행 예:

passwordLevel("123456") //返回1

passwordLevel("Abc'123456") //返回4

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" //再次填写密码需一致
 }
 }
});

비밀번호 생성 및 강도 감지에 관심이 있는 친구는 온라인 도구를 참조할 수도 있습니다:

비밀번호 보안 온라인 감지

강력한 비밀번호 생성기

단축링크(단축URL) 온라인 생성 도구

이 기사가 모든 사람의 JavaScript 프로그래밍 설계에 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.