JS 문자열 뒤집어서 return (for문 덕지덕지?? NO!!) (... / reverse( ) / join( ) )
문자열 my_string이 매개변수로 주어집니다. my_string을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ my_string의 길이 ≤ 1,000
입출력 예
my_stringreturn
"jaron" | "noraj" |
"bread" | "daerb" |
function solution(my_string) {
let answer = [];
for(let a = 0; a <= 999; a++){
answer[a] = my_string[a];
if (my_string.length-1 === a){
break;
}
}
let reverse = answer.reverse();
let rAnswer = ""
for(let b = 0; b <= 999; b++){
rAnswer += reverse[b];
if (my_string.length-1 === b){
break;
}
}
return rAnswer;
}
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 왜 이렇게 풀었을까.........
다른사람의 풀이를 보면서 정말 많이 공부가 되는거 같다.
function solution(my_string) {
var answer = [...my_string].reverse().join("");
return answer;
}
내가 배웠지만, 못쓴것들을 다시 정리한다.
1. ... 전개구문 (spread operator) : 풀어서 하나하나 준다.(다시 합칠수도 있음. 아래링크 참고)
https://gabojok.tistory.com/35
var answer = [...my_string]
결과값은 이렇다.
[ 'j', 'a', 'r', 'o', 'n' ]
새로배운거
2. .reverse( ) : 배열의 순서를 거꾸로 만들어 준다.
var answer = [...my_string].reverse()
결과값은 이렇다.
[ 'n', 'o', 'r', 'a', 'j' ]
이 reverse 함수는 원본 배열도 함께 변형된다.
원본 배열은 그대로 유지하고, 리턴되는 값만 변경하고 싶을 때에는??
원본배열 복사해서 사용해야 한다
위에서 쓴것처럼
[...변수이름].reverse( )
3. .join( ) : 배열의 요소들을 연결하여 하나의 문자열로 만드는 함수
배열 내의 모든 값들을 순서대로 연결시켜준다.
배열 내의 값이 0일 경우에 빈 문자열을 내보내고,
구분시켜줄, 혹은 묶어줄 요소를 괄호안에 넣어주면 그대로 구분 혹은 묶어서 나온다.
만약 구분값이 없다면 쉼표로 표시되서 연결됨.
var test = ['a', 'b', 'c'];
var result1 = test.join();
// result : a,b,c
var result2 = test.join('');
// result : abc
var test = ['2020', '01', '01'];
var result1 = test.join('-');
// result : 2020-01-01'
var result2 = test.join('/');
// result : 2020/01/01
join() 에 대한 출처
https://sesok808.tistory.com/662
[JavaScript] 배열 하나의 문자열로 만들기 (join 함수)
배열의 요소들을 연결하여 하나의 문자열로 만드는 함수. Array.join([separator]) 배열 내에 모든 값들을 순서대로 연결시켜주고, 배열의 길이가 0이면 빈 문자열을 반환하게 된다. 그리고 구분값이
sesok808.tistory.com