코드카타 #2

김태현·2020년 11월 3일
0

코드카타

목록 보기
2/9
post-thumbnail
  • 문제
    reverse 함수에 정수인 숫자를 인자로 받습니다.
    그 숫자를 뒤집어서 return해주세요.

x: 숫자
return: 뒤집어진 숫자를 반환!

예들 들어,
x: 1234
return: 4321

x: -1234
return: -4321

x: 1230
return: 321

const reverse = x => {
	let string = String(Math.abs(x));
    let arr = string.split(''); 
    let newArr = arr.reverse().join(''); 
    return x < 0 ? -parseInt(newArr) : parseInt(newArr);
    
}

reverse(-1230);

먼저 입력받은 숫자 x를 절대값으로 바꿔준 다음에 string으로 변환한다.
변환한 문자열을 split('') 해서 문자별로 나뉜 배열이 반환된다.
그 후 reverse 함수로 배열의 순서를 반대로 돌린다음에 join('') 함수로 나눠진 문자가 담긴 배열을 다시 문자열로 뭉쳐준다.
아마도 split('')의 반대개념이 join('')인듯??
그 후 삼항연산자로 입력받은 x가 음수인지 양수인지 판단해서 부호를 붙여준다.

느낀점
오늘 문제는 쉬웠다!
join 함수와 split 함수가 서로 대응되는 개념인 것을 처음 알았다!

  let temp = '';
  for(let i = string.length-1; i >= 0; i--) {
    temp += string[i];
  }

반복문을 뒤에서 돌리는 방법과 빈 문자열에 계속해서 붙여주는 것에 대해서 공부!

profile
프론트엔드 개발자

0개의 댓글