끄적끄적 메모장

[JavaScript] 문자열을 활용한 예제를 공부해보자 본문

프론트엔드/JavaScript

[JavaScript] 문자열을 활용한 예제를 공부해보자

병걸 2023. 5. 2. 14:00

 

문자열을 활용하여 여러가지 예제를 풀어보자

 

아래와 같이 전화번호의 뒷자리 4자리를 *으로 변경할 수도 있습니다.

// 이름 입력받기
var userName = prompt("당신의 이름을 영문자로 입력하세요", ""); // Lee 입력

// 전화번호 입력받기
var userTel = prompt("전화번호를 - 없이 입력하세요", ""); // 01012345678 입력

// 이름을 대문자로 출력하기
document.write(userName.toUpperCase() + "<br>"); // LEE 출력

// 전화번호
var result = userTel.substr(0, userTel.length - 4) + "****";
document.write("당신의 전화번호는 :" + result); // 0101234**** 출력

위 코드에서 userTel.length - 4 는 입력한 전화번호의 문자 길이인 11에 4를 빼 전화번호의 0위치부터 7까지의 문자를 ****으로 변경하여 출력하게 된다.

 

두번째 예제로는 이메일 형식이 맞는지 아닌지를 판단하는 코드입니다.

var userEmail = prompt("당신의 이메일 주소를 입력하세요", ""); // abc@naver.com 입력

var arrUrl = [".co.kr", ".com", ".net", ".go.kr"];
// @를 포함하는지를 체크
var check1 = false;
// arrUrl에 있는 값이 아닌지를 체크
var check2 = false;

if (userEmail.indexOf("@") > 0) {
	check1 = true;
}

for (i = 0; i < arrUrl.length; i++) {
	if (userEmail.endsWith(arrUrl[i])) {
		check2 = true;
	}
}
if (check1 && check2) {
	document.write(userEmail); // check1, check2가 true일 경우 abc@naver.com 출력
} else {
	document.write("이메일형식이 틀렸습니다.")
    // check1, check2가 false일 경우 이메일형식이 틀렸습니다. 출력
}

위 코드에서 check1 변수는 입력한 이메일에 @가 있는지 확인을 하고 있다면 true로 변경해주면서 없다면 false를 유지합니다. 또한 check2 변수도 끝에 .co.kr, .com ~~ 으로 끝나면 true로 변경되고 없다면 false를 유지하게 됩니다.

따라서  check1 && check2 로 인해 둘다 true 일 경우 이메일이 출력되고 하나라도 일치하지 않을 경우 "이메일형식이 틀렸습니다." 가 출력됩니다.

 

 

 

Comments