JS 알고리즘 문제풀이/섹션 1. 기본문제 풀이

11.대문자 찾기

crab. 2022. 1. 12. 11:29

📌강의 정리

대문자는 총 3개이다.

고전적인 방법은 toUpperCase()를 사용하는것이다.

x.toUpperCase()하면 x자체를 바꾸는것이 아닌 x의 대문자 값을 출력한다.

x값이 변하지는 않음 깊은 복사

x= x.toUpperCase() 하면 다 바뀐다.

아스키 코드 방법도 있다.

let num = x.charCodeAt() 로 하면 num에 순서대로 x의 아스키코드가 저장된다.

이것도 원래 배열을 바꾸는 것이 아닌 바뀐값을 출력하는 것이므로 if문이용하여 하나씩 비교하면된다.

📌느낀점

구글링을 조금 했지만 문제 풀기전부터 아스키코드를 이용해야겠다는 생각은 했다.

어려운점은 크게 없다. 두가지만 기억해두자

문자를 아스키코드로 바꿔주는 x.charCodeAt()

문자를 대문자로 바꿔주는 x.toUpperCase()

//나의 코드
<html>
    <head>
        <meta charset="UTF-8">
        <title>출력결과</title>
    </head>
    <body>
        <script>
            function solution(s){         
                let answer=0;
                for(let i=0; i<s.length;i++){
                  if(s.charCodeAt(i)>=65 && s.charCodeAt(i)<=90){
                    answer++;
                  }
                }
                return answer;
            }

            let str="KoreaTimeGood";
            console.log(solution(str));
        </script>
    </body>
</html>
//강사님 코드
<html>
    <head>
        <meta charset="UTF-8">
        <title>출력결과</title>
    </head>
    <body>
        <script>
            function solution(s){         
                let answer=0;
                for(let x of s){
                    //let num=x.charCodeAt();
                    //if(num>=65 && num<=90) answer++;
                    if(x===x.toUpperCase()) answer++; 
                }

                return answer;
            }

            let str="KoreaTimeGood";
            console.log(solution(str));
        </script>
    </body>
</html>

'JS 알고리즘 문제풀이 > 섹션 1. 기본문제 풀이' 카테고리의 다른 글

13.대소문자변환  (0) 2022.01.12
12.대문자로 통일  (0) 2022.01.12
10.문자 찾기  (0) 2022.01.11
9.A를 #으로  (0) 2022.01.11
8.일곱난쟁이  (0) 2022.01.11