자바스크립트에서 타입을 숫자로 변경하는 방법은 매우 많습니다. 아래는 이런 방법들을 알아보려합니다.



# parseInt() 사용하기

자바스크립트의 순수 함수인 parseInt()를 사용하는 방법입니다.

var test = '123';
parseInt(test);

123  //  숫자로 변환됨

가장 많이 사용되는 방법입니다. 실수로 변환하는 parseFloat() 역시 동일하게 숫자로 변환하여 반환입니다.

parsetFloat(test);

123  //  숫자로 변환됨

참고로 parseInt() 또는 parseFloat()는 숫자뒤에 문자가 포함된 경우 숫자값만 숫자로 반환합니다. 일반적으로 NaN으로 반환되는 것과의 차이점입니다.

test = '123webisfree';
parseInt(test);

123  //  숫자 123만 숫자로 반환됨


또한, toFixed()를 사용하여 원하는 자리수에 맞게 반환할 수 있습니다.
test.toFixed(6) * 1

뒤에 1을 곱하는 이유는 숫자로 다시 변환하기 때문입니다. toFixed()는 문자 타입으로 반환합니다.



# 연산자를 사용하기

아래는 + 또는 - 연산자를 사용하여 간단하게 문자를 숫자로 변경한 방법입니다.

var test = '123';
test = + test;  //  test = +test 동일한 결과를 반환

또는 -를 사용할 수 있습니다.

test = -test;
test = test - 0;

123  //  숫자로 변환됨

이 경우 역시 숫자로 변환됩니다. 단 아래와 같이 + 앞에 다른 값이 있는 경우 숫자로 바뀌지 않습니다. 아래를 봐주세요.

var test = '123';
test = 1 + test;

'1123'  //  문자로 나타나며 변환되지 않음

추가로 * 또는 / 역시 숫자 변환에 사용할 수 있습니다

var test = "123";
test = test * 1;

123  //  숫자로 변환됨

/ 를 사용하여도 가능합니다.

var test = '123';
test = test / 1;

123  //  숫자로 변환됨



# 비트 연산자(Bitwise Operator)를 사용하는 방법

비트 연산자를 사용하는 방법 역시 존재합니다. 참고로 비트 연산자는 32비트 정수로 변환되는데 2진수 표현으로 연산을 수행합니다. 이때 ~ 기호는 비트를 반대로 바꾸어줍니다.

var test = '123';
test = ~~test;

123  //  숫자로 변환



# Number() 내장함수를 사용하는 방법

또 내장함수인 Number()를 사용가능합니다. 반대로 String()을 사용할 수 도 있습니다.

test = "123";
Number(test);

123  //  숫자로 변환됨

반대로 숫자를 문자로 변경하기 위해 String()을 사용할 수 있습니다.

test = 123;
String(test);


"123"  //  문자로 변환됨



# 문자를 숫자 타입으로 변환하기

이번에는 반대로 숫자를 문자로 변환하는 방법입니다.

var test = 123;
test += "";

"123"  //  문자로 변환됨

아래 방법도 가능합니다.

var test = 123;
test = "" + test;


"123"  //  문자로 변환됨

이처럼 간단하게 숫자 역시 문자로 바꿀 수 있습니다. 환경에 따라 다르지만 단순 함수 방식보다 연산자를 활용하는 방법이 더 빠를 수 있다고 합니다.