1. 형변환 등장 배경
10+20의 값은 30이다.
그런데 자바스크립트에선
10 + 20의 값이 1020으로 나올 수도 있다.
이러한 문제는 문자를 숫자로,
숫자를 문자로 바꾸는 형변환에 대해 알면
쉽게 해결할 수 있다.
2. 문자를 숫자로 바꾸기
위의 코드는 내가 두 개의 숫자를 입력했을 때
그 두 개의 숫자의 합을 출력하는 코드다.
예시로 내가 숫자 10과 숫자 20을 입력하면
10 + 20의 결과값인 30이 출력되게 하는 코드인 것이다.
그런데 결과로 30이 아닌 1020이 나와버렸다.
이런 현상이 나타나는 이유는 prompt 때문이다.
코드 첫 줄을 보면 prompt가 보일텐데
prompt는 입력을 받게 해주는 것으로
숫자가 아닌 문자 형태로 입력을 받는다.
예시로 내가 키보드를 통해 숫자 10을 입력해도
숫자 10이라고 인식하지 않고 문자 "10"이라고 인식한다.
이게 무슨 문젠가 하면 숫자 10과 20을 더하면 30이지만
문자 "10"과 문자 "20"을 더해주면 문자들끼리 서로 이어져서
문자 "1020"이 튀어나온다.
1020이 아닌 30이 나오게 하는 방법은 간단하다.
바로 문자를 숫자로 바꿔주는 Number를 사용해 주면 된다.
2-1. Number 사용법
위의 코드처럼 문자 "10"을 Number로 감싸주면
문자 "10"이 숫자 10으로 바뀐다.
Number를 이용해서 A1과 A2에 담긴
문자 "10"과 문자 "20"을 숫자 10과 20으로 바꾸어 줬다.
3. 숫자를 문자로 바꾸기
숫자를 문자로 바꾸는 것도 가능하다.
Number 대신 String으로 바꿔서 쓰면
숫자 10을 문자 "10"으로 형변환이 된다.
'IT > JavaScript' 카테고리의 다른 글
[JS] 자바스크립트 '화살표 함수' 정의와 사용법 (0) | 2023.01.26 |
---|---|
[JS] 자바스크립트 '함수 선언문'과 '함수 표현식' 차이 (0) | 2023.01.22 |
[JS] 자바스크립트 '함수'는 뭐고, 어떻게 사용하는 걸까? (0) | 2023.01.16 |
[JS-ERROR] location.href 안될 때 해결 방법 (0) | 2022.05.31 |
[JS-ERROR] 자바스크립트에서 name을 변수로 선언하니 밑줄이 그어진다. (0) | 2022.05.23 |