-
[자바스크립트 꿀팁] 진수 변환 (N 진수 > N진수)frontend/꿀팁 2022. 3. 23. 17:33
오늘은 진수변환에 대해서 알아 보도록 하겠습니다. 진수변환 다들 하실 줄 아시겠지만 자바스크립트에서는 toString() 메소드와 parseInt()메소드를 통해 아주 손쉽게 할 수 있습니다.
10진수 -> 2진수( 3, 4, 5...N 진수)
let decimal = 2022; //10진수 -> 2진수 console.log(decimal.toString(2)); //10진수 -> 3진수 console.log(decimal.toString(3)); //10진수 -> N진수 console.log(decimal.toString(N));
간단합니다. 위와 같이 Number 프로토타입 안에 있는 toString메소드의 파라미터로 원하는 진수값을 넘겨주면 손쉽게 변경됩니다.
2진수 ( 3, 4, 5...N 진수 ) -> 10진수
//2진수 -> 10진수 let binary = "1011" console.log(parseInt(number,2)); //3진수 -> 10진수 let trinary = "2122" console.log(parseInt(number,3)); //N진수 -> 10진수 let parameter = "~" parseInt(parameter,N);
10진수는 String 프로토타입 안에 있는 parseInt 메소드를 통해서 변환할 수 있습니다.
N진수 -> N진수
//3진수 -> 2진수 console.log(parseInt("21121",3).toString(2));
이렇게 위에서 배운 진수변환들을 조합하여 N진수에서 N진수로 변환하는 것도 가능합니다.
진수변환 많이 쓸 일은 없겠지만 가끔씩 쓸일이 있습니다. 알고리즘 풀다보면 가끔씩 나오고 최근에 카카오 문제에서도 진수변환이 필요한 문제가 있었던걸로 알고있습니다.
반응형'frontend > 꿀팁' 카테고리의 다른 글
[자바스크립트 꿀팁] 브라우저 다크모드 감지 (Detect DarkMode Using JavaScript) (0) 2022.10.07 [VS Code] 자주 쓰는 비주얼 스튜디오 코드(VS CODE) 확장 프로그램 모음 (0) 2022.10.05 [DOM Hack] 특정 DOM element의 이벤트 모두 없애기(HTML Event remove) (0) 2022.09.29 [자바스크립트 꿀팁] 숫자 세자리 콤마 ( 숫자 3자리 콤마 ) (0) 2022.03.24