본문 바로가기
JAVASCRIPT

Javascript Built in Object - String Object, 자바스크립트 내장객체 - 문자열객체

by devorldist 2022. 5. 7.
728x90
반응형
SMALL
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        /*
        <문자열 객체의 메서드 및 속성>
        charAt(index) 문자열에서 인덱스 번호에 해당하는 문자 반환
        indexOf("찾을 문자") 문자열에서 왼쪽 부터 찾을 문자와 일치하는 문자를 찾아서
        제일 먼저 일치하는 문자의 인덱스 번호 반환, 없으면 -1 반환
        lastIndexOf("찾을 문자") 문자열에서 오른쪽 부터, 없으면 -1반환
        match("찾을 문자") 문자열에서 왼쪽 부터 찾아 제일 먼저 찾은 문자 반환. 없으면 null 반환
        replce("바꿀 문자", "새 문자")
        search("찾을 문자") 왼쪽에서 부터, 인덱스 번호 반환
        slice(a, b) a개의 문자를 자르고 b번째 이후에 문자를 자른 후, 남은 문자 반환, -1 뒤에서 부터
        substring(a, b) a인덱스 부터 b 인덱스 이전 구간의 문자 반환
        substr(a, 문자개수) 문자열에 a 인덱스부터 지정한 문자 개수 만큼 문자열을 반환
        split("문자") 지정한 문자를 기준으로 문자 데이터를 나누어 배열에 저장하여 반환
        toLowerCase()
        toUppercase()
        length
        concat("새로운 문자")
        charCodeAt(index) 문자열 index에 해당 문자의 아스키 코드 값 반환
        fromCharCode(아스키 코드 값) 아스키 코드 값에 해당하는 문자 반환
        trim() 문자의 앞 또는 뒤에 공백 문자열 삭제
        */

        var t = "Hello Thank you good luck to you";

        document.write(t.charAt(16), "<br>"); //인덱스 16에 저장된 문자 반환 g
        document.write(t.indexOf("you"), "<br>"); //첫번째 you의 인덱스 값
        document.write(t.indexOf("you", 16), "<br>"); //인덱스 16위치 부터 첫번째 you 인덱스 값
        document.write(t.lastIndexOf("you"), "<br>"); //오른쪽에서 왼쪽 방향으로 첫번째 you 인덱스 값
        document.write(t.lastIndexOf("you", 25), "<br>");//인덱스 25부터 왼쪽 방향으로 첫번째
        document.write(t.match("luck"), "<br>");
        document.write(t.search("you"), "<br>");
        document.write(t.substr(21, 4), "<br>");//문자열 인덱스 21부터 4글자
        document.write(t.substring(6, 12), "<br>");//인덱스 6부터 12 이전 까지
        document.write(t.replace("you","me"), "<br>");
        document.write(t.toLowerCase(),"<br>");
        document.write(t.toUpperCase(),"<br>");
        document.write(t.length,"<br>");//공백도 문자로 취급

        var s = t.split(" ");
        document.write(s[0],"<br>");
        document.write(s[4],"<br>");

        var str="A";
        var t=str.charCodeAt(0);
        document.write(t, "<br>");
        document.write(String.fromCharCode(65), "<br>");

        document.write("---------------------------", "<br>");
       
        //방문자로 부터 이름을 영문으로 입력 받은 후, 방문자가 영문 이름을 소문자로
        //작성했을 경우 대문자로 바꿔 출력, 연락처를 입력 받은 후, 정보가 노출 되지 않도록
        //전화 번호 뒤의 네자리 ****로 출력

        var vName = prompt("이름을 입력하세요", "");
        var vNum = prompt("연락처를 입력하세요", "");

        var nName = vName.toUpperCase();
        var nNum = vNum.substring(0, vNum.length-4);

        document.write("your name is "+nName, "<br>");
        document.write("your number is "+nNum+"****", "<br>");
       
        //feedback 사소한 오타 주의
        //substring(a, b) a인덱스 부터 b 인덱스 이전 구간의 문자 반환
        //substr(a, 문자개수) 문자열에 a 인덱스부터 지정한 문자 개수 만큼 문자열을 반환

        document.write("---------------------------", "<br>");

        //문자열 객체 메서드를 이용해 사용자로부터 입력받은 이메일의 유효성 검사

        var userEmail = prompt("당신의 이메일 주소는?", "");
        var arrUrl = [".co.kr", ".com", ".net", ".or.kr", ".go.kr"];

        var check1 = false;
        var check2 = false;

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

        for(var i=0; i<arrUrl.length; i++) {
            if(userEmail.indexOf(arrUrl[i])>0) {
                check2 = true;
            }
        }

        if(check1 && check2) {//이거 틀림** 둘 다 true 인 경우
            document.write("이메일이 정상 입력 되었습니다. 당신의 이메일은 "+userEmail+"입니다.", "<br>");
        } else {
            alert("이메일이 잘못 입력 되었습니다.");
        }
    </script>
</body>
</html>
 
출처 : doit javascript
728x90
반응형
LIST