재귀함수로 문자열 뒤집기
문자열을 입력받아 거꾸로 뒤집어 반환하는 함수 만들기
function reverse(str) {
// 입력된 문자열이 빈 문자열인 경우
if (str === '') {
return '';
}
// 문자열의 첫 번째 문자와 나머지 문자열을 분리
const firstChar = str[0];
const restChars = str.slice(1);
// 나머지 문자열을 거꾸로 뒤집은 결과와 첫 번째 문자를 연결하여 반환
return reverse(restChars) + firstChar;
}
console.log(reverse('hello') //olleh
1. function reverse(str) : 입력된 문자열을 거꾸로 뒤집어 반환하는 재귀 함수 reverse의 선언부입니다. str 매개변수는 입력된 문자열을 받습니다.
2. if (str === '') { return ''; } : 입력된 문자열이 빈 문자열인 경우, 즉, 더 이상 분리할 문자가 없을 경우 함수 실행을 종료하고 빈 문자열('')을 반환합니다.
3. const firstChar = str[0]; : 문자열 str의 첫 번째 문자(str[0])를 추출하여 firstChar 변수에 할당합니다.
4. const restChars = str.slice(1); : 문자열 str에서 첫 번째 문자를 제외한 나머지 문자열을 추출하여 restChars 변수에 할당합니다. String.prototype.slice() 메서드는 매개변수로 전달된 인덱스(1)부터 시작하는 문자열을 추출합니다.
5. return reverse(restChars) + firstChar; : 재귀적으로 문자열을 분리하고 거꾸로 뒤집은 결과를 연결함으로써 입력된 문자열을 거꾸로 뒤집어 반환합니다. reverse(restChars)는 문자열 restChars를 뒤집은 결과를 반환하므로, reverse(restChars) + firstChar는 문자열 str을 거꾸로 뒤집은 결과를 반환합니다.
console.log('hello'.split('').reverse().join('')) // olleh
자바스크립트 내장 함수 split, reverse, join을 사용하여 구현도 가능합니다.
[자바스크립트] split과 join
1. split split() 메서드는 문자열을 구분자로 나누어 배열로 반환하는 함수입니다. 이 함수를 사용하면 문자열을 분리하여 배열로 저장할 수 있습니다. 다음과 같은 문자열을 공백으로 구분하여 배
131zipdan.tistory.com
'Programming' 카테고리의 다른 글
문자열 검색 (0) | 2023.03.31 |
---|---|
메모이제이션 - 자바스크립트 (0) | 2023.03.27 |
피보나치 수열 (0) | 2023.03.25 |
concat - 자바스크립트 (0) | 2023.03.24 |
재귀함수로 팩토리얼 구하기 (0) | 2023.03.23 |
댓글