문제 설명
문자열 my_string이 매개변수로 주어질 때, 대문자는 소문자로 소문자는 대문자로 변환한 문자열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ my_string의 길이 ≤ 1,000
- my_string은 영어 대문자와 소문자로만 구성되어 있습니다.
입출력 예
my_string | result |
"cccCCC" | "CCCccc" |
"abCdEfghIJ" | "ABcDeFGHij" |
입출력 예 설명
입출력 예 #1
- 소문자는 대문자로 대문자는 소문자로 바꾼 "CCCccc"를 return합니다.
입출력 예 #2
- 소문자는 대문자로 대문자는 소문자로 바꾼 "ABcDeFGHij"를 return합니다.
내 풀이 및 배운 점
function solution(my_string) {
// 하나씩 가져와서 toUpperCase를 해본다.
// 원래 있는 값과 toUpperCase한 값과 같다면 toLowerCase
// 원래 있는 값과 toUpperCase한 값과 다르다면 그대로 냅둔다.
// 그걸 하나씩 푸쉬
let ary = my_string.split("");
let result = [];
ary.map(function(a){
if(a === a.toUpperCase()){
result.push(a.toLowerCase())
}
else{
result.push(a.toUpperCase())
}
})
result = result.join('')
return result
}
solution("cccCCC")
1. 문자열을 배열에 담는 법을 몰라서
split를 사용하면 된다는 것을 배움
2.toUpperCase 랑 toLowerCase 를 쓰는 방법이 헤갈림
문자열.toUpperCase() 이런 양식으로 사용해야된다.
3. 배열을 문자열로 바꾸는 방법을 몰랐다.
join('')을 사용하면 됨
다른 사람 풀이
function solution(my_string) {
var answer = '';
for (let c of my_string) answer += c === c.toLowerCase() ? c.toUpperCase() : c.toLowerCase();
return answer;
}
for...of 문법과 삼항연산자를 사용해서 간략하게 표현함
for (let element of arr ){
//element는 각 배열의 요소를 하나씩 가져온다.
}
for (const property in object) {
// property 는 객체의 키를 가져온다.
`${property}: ${object[property]}` 요런식으로 적으면 키와 값이 나온다.
}
'코딩테스트 > 문제풀이' 카테고리의 다른 글
[프로그래머스] 가위 바위 보 (0) | 2023.04.16 |
---|---|
[프로그래머스] 제곱수 판별하기 (0) | 2023.04.15 |
[프로그래머스] 암호 해독 (0) | 2023.04.14 |
댓글