[Code Kata] Day 2. 받은 인자 값 돌려서 반환하기

Pulan·2022년 8월 5일
0

알고리즘

목록 보기
1/3
post-thumbnail

reverse 함수에 정수인 숫자를 인자로 받습니다. 그 숫자를 뒤집어서 return해주세요.
x: 숫자 return: 뒤집어진 숫자를 반환!
예들 들어, x: 1234 return: 4321
x: -1234 return: -4321
x: 1230 return: 321

접근 방법

  1. 정수인 인자 값을 뒤집어서 반환한다. -> reverse 메서드 사용
  2. reverse 메서드는 원본 배열을 뒤집는다. -> reverse 메서드를 사용하기 위해서 인자 값을 배열로 만들어 준다.
  3. 정수에서 바로 배열로 바꾸지 못해서 문자열로 바꾼뒤 배열로 바꾼다. -> toString(), split()
인자 값.toString().split('').reverse();
  1. 일반적인 정수를 해결했으니 이제 인자 값에 -가 들어있는지 확인하여 조건에 맞게 처리한다.
  2. 뒤집힌 배열에 -가 포함되어 있으면 마지막 요소는 지우고, 맨 앞에 -을 넣는다. -> pop(), unshift()
  3. 마지막으로 배열을 풀어준뒤 숫자형으로 바꿔준다. -> join(), Number()

이 코드의 문제점(?)

이 코드의 문제점은 아니지만 문제점인 건 받아온 인자 값에 맨 뒤에 -가 있으면 실행되지 않는다.
근데 이 코드를 설계하기 전부터 예시로 (1234, -1234, 1230) 뿐이어서 맨 뒤에 -가 있는건 처리를 안했다.

전체 코드

const reverse = x => {
  let strX = x.toString().split('').reverse();
  if (strX.includes('-')) {
    strX.pop();
    strX.unshift('-');
  }
  return Number(strX.join(''));
};

앞으로 코드 카타

블로그에는 코드 카타를 하면서 인상 깊었던 것이나 새로 알게 된 것을 기준으로 올리게 될것이다.

profile
현재 개발 중인 블로그로 내용들을 개선하면서 업데이트하고 있습니다. https://www.plu457.life/

0개의 댓글