터미널을 열고 unalz 설치
sudo apt-get install unalz
사용법
sudo unalz 파일명
터미널을 열고 unalz 설치
sudo apt-get install unalz
사용법
sudo unalz 파일명
개발을 하다보면 숫자를 쓸 때 1, 2, 3, 4가 아닌 01, 02, 03, 04 로 사용하는 경우가 종종 있다. 파일명에 사용되는 숫자라던지 아니면 화면에 카운트 되는 숫자라던지…
그래서 1을 01로 표현하고 싶을 경우 간단한 함수 하나를 제작하여 사용하면 된다.
function digits( n, l ) {
var _result;
n += '';
if( n.length < l ) {
_result = new Array( l - n.length + 1 ).join( '0' ) + n;
} else {
_result = n;
}
return _result;
}
함수는 자리수를 변경할 ‘숫자’와 ‘자리수’를 매개변수로 받는다.
먼저 숫자를 문자열로 변환해준다.
원하는 자리수에서 기존 숫자의 자리수를 빼준(모자란 자리수) 만큼의 길이보다 1칸 더 많은 길이를 가진 배열을 만들어주고 배열을 값 사이에 ‘0’을 넣어서 합쳐준다.
예를 들어서 12를 5자리수로 만들고 싶다고 치면 00012가 될 것이다.
그럼 0이 3개가 필요하고 길이가 4인 배열을 값 사이에 0을 넣어서 합치게 되면
'빈값' 0 '빈값' 0 '빈값' 0 '빈값'
결과는 ‘000’이 된다. 그래서 모자란 자리수에 1을 더한 길이의 배열이 필요한것이다.
모자란 만큼 0을 만든 값을 기존 숫자 앞에 붙여주면 끝.
다른 방법도 있는데 숫자 앞에 ‘00000000000000000000’ 이렇게 많은 0을 붙여준 다음 뒤에서부터 자리수만큼 자르면 된다.
둘 중 어떤 방법이 더 성능면에서 유리한지는 잘 모르겠으니 성능이 중요하다면 알아서 검색해보도록…
위 함수는 원리 설명을 위해 풀어서 쓴거고 약식 조건문으로 한줄로 해결도 가능하다.
function digits( n, l ) {
return String( n ).length < l ? new Array( l - String(n).length + 1 ).join( '0' ) + n : n;
}