자바스크립트를 사용하여 숫자의 자리수(자릿수)를 구하려면 어떤 방법이 있을까요? 아래에서 숫자가 몇 자리인지를 구하는 방법을 알아봅니다.

먼저 예를들어봅니다. 만약 12 또는 10,000이라는 숫자가 있는 경우 자릿수를 아래처럼 반환되도록 가져오려면 어떻게 할까요?

Ex) 12 -> 2를 반환 (2자리)
Ex) 10,000 -> 5를 반환 (5자리)


위와같이 숫자가 몇 자리인지 알아낸 후 그 결과를 반환하는 숫자만 가져오려고 합니다...


# 자바스크립트로 숫자의 자릿수 구하기가장 간단한 방법은 숫자를 문자로 바꾼후 해당 문자의 길이를 얻는 것입니다. 이 방법은 매우 쉬운데 문자 타입인 경우 문자열의 길이를 length를 사용해 가져올 수 있다는 점을 이용합니다. 아래 코드를 봐주세요.

var num = 12345;
num = num.toString();
numDigit = num.length;
console.log(numDigit);

실행하면 5를 출력합니다. 가장 간단합니다.


# 숫자를 문자로 바꾼 후 index의 값이 존재하는지를 확인하는 방법

위 방법처럼 숫자를 바꾸나 length가 아닌 해당 위치에 값이 존재하는지의 여부로 자릿수를 찾는 방법입니다.
function getDigit(num) {
  num = num.toString();
  var i=0;
  while(num[i]) { i++; };
  return i;
}

위 함수는 해당 숫자의 자릿수를 반환합니다. 그럼 아래에서 직접 숫자를 입력 후 확인해보세요.


Result: