
reverse 함수에 정수인 숫자를 인자로 받습니다.
그 숫자를 뒤집어서 return해주세요.
x: 숫자
return: 뒤집어진 숫자를 반환!
예들 들어,
x: 1234
return: 4321
x: -1234
return: -4321
x: 1230
return: 321
나의 답변
<script> const reverse = x => { let str = String(x); // '-1234' let arr = str.split(""); // [ '-', '1', '2', '3', '4' ] let newArr = []; if(arr.includes('-')){ for(let i=arr.length-1; i>=1; i--){ newArr.push(arr[i]); } newArr.unshift('-'); // [ '-', '4', '3', '2', '1' ] } else{ for(let i=arr.length-1; i>=0; i--){ newArr.push(arr[i]); } } let test = newArr.join('') // '-4321' return Number(test); // -4321 } </script>
- 변수 x에 숫자가 들어오면
String(x)로 일단 문자화 시켜준다. =>'-1234'split(""): 긴 텍스트를 특정한 구분 문자를 사용하여 배열로 만드는 것 ['-', '1', '2', '3', '4']let newArr = [];새로받을 배열을 생성해주고 for문은 역순으로 돌린다! (숫자가 역으로 반환되야하니까)- if조건이 둘로 나뉜다!
includes('-')를 포함하면 그-인자를 제외한i=1부터 for문을 돌리고 정수를push()함수로 하나씩 채운다.
-를 포함하지 않으면i=0부터 그대로 돌리면 된다!- 그런 다음 for문이 끝났을때 무시했던 "-"인자를
unshift()로 맨앞에 붙여준다. [ '-', '4', '3', '2', '1' ]join(): 배열을 문자열로 변환하기 '-4321'Number(): 숫자화 -4321