대문자와 소문자

김종현·2023년 4월 5일
0

1. 막힌 부분

-문자열 매개변수를 아스키 코드로 변환하여 조건문에서 대문자/소문자를 분리하여 각각 소문자/대문자로 바꿔주려 했다.
-그러나 조건 설정에서 64<대문자 아스키값<91을 두니 문자열 모두가 출력이 되었다.

2. 막힌 부분의 해결

-조건식을 다음과 같이 만들어주니까 해결 되었다.

3. 내 풀이

function solution(my_string) {
    var str = '';
    
    for(let i =0; i<my_string.length; i++){
        if (my_string.charCodeAt(i)<96){
            str += my_string[i].toLowerCase()
        } else if (96<my_string.charCodeAt(i)){
            str += my_string[i].toUpperCase()
        }
    }
    return str
}

4. 다른 사람의 풀이 중 좋았던 코드 및 분석

function solution(my_string) {
    return my_string.split('').map(n => n === n.toUpperCase() ? n.toLowerCase() : n.toUpperCase()).join('')
}

-문자열을 각 요소별로 나눈뒤 해당 값을 대문자로 변환한 값과 같을 경우 소문자로, 다를 경우 대문자로 변환 시킨 뒤 조립하는 코드다.
-내 방식과는 달리 코드도 직관적이고 아스키 값을 사용할 필요가 없다.

5. 새로 배운 것

-아스키 코드 값 활용, 삼항 연산자와 map을 통한 조건 완성 방법.

profile
나는 나의 섬이다.

0개의 댓글