Javascript에서는 Java처럼 String이나 int 타입을 담을 수 있는 방법이 없습니다. 결국 모든 변수는 var에 담는데 값은 속성을 가지고 있는 형태로 저장되어 집니다.
그래서 발생하는 문제는 만약 var a라는 변수에 파라미터로 넘어온 값을 담았는데 전에 넘긴 파라미터의 속성을 모른다면 무슨 형태로 값이 저장됬는지 모르는 상황이 발생합니다.
대표적인 예가 String과 int(Number)입니다. Javascript단에서 ajax를 태워 db에 값을 저장할 경우 db컬럼의 속성이 number면 값이 insert되지 못하는 현상이 발생기도 하며 차트같은 플러그인을 쓸때 결과값은 숫자로 리턴받아 js파일에 넘기는 형태가 발생하는데 부득이하게 string으로 넘기게 되고 그렇게 되면 string은 숫자가 아니기 때문에 차트가 정상적으로 그려지지 않는 현상이 발생합니다.
그래서 Javascript에서 문자에서 숫자로 변환하는 과정이 필요한데 이번에 Javascript String to int (Number) 변환 방법을 소개하겠습니다.
예제에서는 다음과 같은 onclick 메소드를 이용해 테스트 해보겠습니다.
1. 숫자(int)로 변환
function TransStr(Str){//문자로 받음 var result = Str + 1; document.write("결과 : "+ result+"<br >"); var TransNum = Number(Str) + 1; var TransInt = parseInt(Str) + 2; document.write("NUM 결과 : "+ TransNum+"<br >"); document.write("INT 결과 : "+ TransInt); }
다음의 예제는 파라미터를 String 로 받은 상황입니다.
문자의 경우 숫자와의 연산이 안되게 때문에 결과를 보면 100과 1 결합되어 1001이 나타났습니다.
이를 Number()와 parseInt()를 이용하여 숫자형태로 바꾸어 출력하였고 결과는 정상적으로 나타났습니다.
2. String으로 변환
function TransStr(Num){//숫자로 받음 var result = String(Num) + 1; document.write(result); }
숫자로 넘긴 값을 받아서 +1 연산을 하였고 결과는 101로 나타나야 정상이나 문자로 바꾸는 작업을 통하여 결과는 1001이 나타났습니다.
이렇게 Javascript에서 String의 문자형태를 int 숫자로 바꿔보았는데요. 이 예제는 실무에서도 많이 필요한 작업이니 꼭 숙지하셔서 유용하게 사용하시기 바랍니다.
답글 남기기