[프로그래머스] 문자열 뒤집기

최유나·2024년 8월 8일
0

프로그래머스

목록 보기
44/53

✨ 문자열 뒤집기

나의 풀이

// solution 1 : for()
function solution(my_string) {
    let reverse = '';
    
    for(let i = 1; i <= my_string.length; i++){
        reverse += my_string[my_string.length-i]
    }
    return reverse;
}

for문을 이용한 문자열 뒤집기
전제 조건인 i를 1로 설정한 후, i가 string문자열의 갯수까지 가게 오름차순으로 반복을 돌린다.
그 다음 선언해둔 reverse변수에 값을 더해(+=)주는데,
string에 string.길이 - i번째 값을 넣어 준 후 리턴한다.

// solution 2 : reverse()
function solution(my_string) {
    let reverse = '';
    return reverse = my_string.split('').reverse().join('');
}

reverse() 메서드를 사용한 문자열 뒤집기
처음에는 문자열 반전 시키려고 reverse만 사용했다가 오류가 떴다.
문자열을 반전시키기 전에 배열로 변환해야 반전 시킬 수 있는데...

string을 ''를 기준으로 나누어 배열로 반환한다.
.reverse() 메서드를 통해 배열을 반전 시킨다.
.join('')으로 ''를 기준으로 합쳐 주며 ''를 제거한다.

// solution 3 : spead
function solution(my_string) {
    let reverse = '';
    return reverse = [...my_string].reverse().join('');
}

spead 메서드를 사용한 문자열 뒤집기
원본의 배열값을 그대로 두고 리턴값만 변경하고 싶어 연습해 보았다.

사용한 메서드
[...Array] : 원본의 배열값을 그대로 두고 리턴값을 변경하고 싶을때 spead연산자를 통해 배열을 복사함(원본 배열은 변경 X)
String.split('') : 문자열을 구분자''로 잘라 배열로 반환
Array.reverse() : 배열의 순서를 뒤집어 반환(원본 배열이 변형)
Array.join('') : 배열의 모든 요소를 연결해 하나의 문자열로 만듬, separator를 생락하면 쉼표(, ) 로 구분된다.

(출처 : String.prototype.split())
(출처 : Array.prototype.reverse())
(출처 : Array.prototype.join())

다른사람의 풀이

const solution = (my_string) => [...my_string].reverse().join('');

이렇게 화살표 함수를 사용하여 한줄로 코드를 깔끔하게 적을 수도 있다.

0개의 댓글

관련 채용 정보