728x90
반응형
#자바스크립트(jQuery) 유효성 검사 정규식 비밀번호 체크
#비밀번호 유효성 검사, 정규식 체크
-예시
<script>
function fn_checkPassword(pwd, id){
// 비밀번호 포맷 확인(영문, 특수문자, 숫자 포함 8자 이상)
// test(): 찾는 문자열이, 들어있는지 아닌지를 알려준다.(boolean)
if(!/^(?=.*[a-zA-Z])(?=.*\d)(?=.*\W).{8,20}$/.test(pwd)){
alert("비밀번호는 영문과 특수문자 숫자를 포함하며 8자 이상이어야 합니다.");
return false;
}
// 반복된 문자 확인
if(/(\w)\1\1\1/.test(pwd)){
alert("비밀번호에 동일한 문자를 과도하게 연속해서 사용할 수 없습니다.");
$("#password").focus();
return false;
}
// 아이디 포함 확인
if(null != id && id != ""){
// search(): 인덱스 위치 반환
if(pwd.search(id) > -1){
alert("비밀번호에 ID를 포함할 수 없습니다.");
$("#password").focus();
return false;
}
}
// 특수문자 확인
for(var i = 0; i < pwd.length; i++){
if(/\W/.test(pwd.charAt(i))){ // 특수문자 중에서
if(!/[!@#$^*+=-]/.test(pwd.charAt(i))){ // 포함된 문자가 아니면
alert("비밀번호에 특수문자는 !@#$%^*+=-만 사용 가능합니다.");
$("#password").focus();
return false;
}
}
}
// 연속된 문자 확인
var ascSeqCharCnt = 0; // 오름차순 연속 문자 카운트
var descSeqCharCnt = 0; // 내림차순 연속 문자 카운트
var char_0;
var char_1;
var char_2;
var diff_0_1;
var diff_1_2;
for(var i = 0; i < pwd.length; i++){
// charAt(): 문자값 반환
char_0 = pwd.charAt(i);
char_1 = pwd.charAt(i+1);
char_2 = pwd.charAt(i+2);
// charCodeAt(): 유니코드값 반환
diff_0_1 = char_0.charCodeAt(0) - char_1.charCodeAt(0);
diff_1_2 = char_1.charCodeAt(0) - char_2.charCodeAt(0);
if(diff_0_1 === 1 && diff_1_2 === 1){
ascSeqCharCnt += 1;
}
if(diff_0_1 === -1 && diff_1_2 === -1){
descSeqCharCnt += 1;
}
}
if(ascSeqCharCnt > 1 || descSeqCharCnt > 1){
alert("비밀번호에 연속된 문자열을 사용할 수 없습니다.");
$("#password").focus();
return false;
}
var pwdCheck = $("#pwdCheck").val();
// 비밀번호 일치 확인
if(pwd != pwdCheck){
alert("비밀번호가 일치하지 않습니다. 확인해주세요.");
$("#pwdCheck").focus();
return false;
}
return true;
};
<script>
728x90
반응형
'IT > Javascript' 카테고리의 다른 글
[Javascript] - 자바스크립트 뒤로가기, 이전 페이지로 이동(history.back(), history.go(), location.href) 차이점 및 사용 방법 (0) | 2022.02.09 |
---|---|
[Javascript] - 자바스크립트 팝업 window.open() 사용법 및 문법 (0) | 2022.02.03 |
[Javascript] - 자바스크립트(jQuery) 유효성 검사 정규식 휴대폰 번호 체크 (0) | 2021.09.27 |
[Javascript] - 자바스크립트(jQuery) 유효성 검사 정규식 전화번호 체크 (0) | 2021.09.27 |
[Javascript] - 자바스크립트(jQuery) 유효성 검사 정규식 이메일 체크 (0) | 2021.09.27 |
댓글