숫자 뒤집기
while (x) {
let o = x % 10;
res = res * 10 + o;
x = parseInt(x / 10);
}
이 반복문이 끝나면, 1개의 숫자가 리버스 된다.
예 : 208 ⇢ 802
원리는 간단하다.
"모든 숫자는 10으로 나누었을 때, 나머지가 1의 자리" 임을 이용한다.
let o = x % 10;
을 하면 이 숫자의 일의 자리를 알 수 있고,
이것을 res에 += 한다.
그리고 몫을 구하고 (x = parseInt(x / 10
) 이것을 다시 x에 대입해서
1의 자리를 구한다.
이것을 계속반복해서 몫(x)이 0이되면 while
이 종료된다.
종료되는 이유는 0은 falsy 값이기 때문이다.
0이 "falsy" 라는 것을 이용해, break
를 굳이 사용하지 않고 있다.
자바스크립트의 내장함수를 이용하면 더 간단하게 할 수 있다.
let x = Number(x.toString().split("").reverse().join())
한줄에 끝난다.
x를 문자로 형변환하고, 그리고 각각의 그것을 배열로 다시 형변환한다.
그리고 그 배열을 reverse(배열의 순서가 변경)하고, join(배열의 모든 요소를 붙여러 문자열로 반환)한다. 그리고 이것을 다시 숫자로 형변환해주면 된다.