📌강의 정리
대문자는 총 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 |