티스토리 뷰
Quick JavaScript (5) Type Conversion
MathTrauma 2022. 9. 7. 00:06
명시적인 형변환은 크게 문제될 것이 없다.
알아보는 것도 사용하는 것도 쉽다.
기본적으로 생성자를 이용하여 형변환을 할 수 있고 추가적인 방법들이 있다.
1. String 으로
임의의 타입에 대해 .toString 메서드를 쓰거나 String 생성자를 사용하면 스트링으로 변환된다.
앞서 number를 string 으로 바꿀 때 주의가 필요하다고 언급한 바 있다.
첫 줄에서 . (dot)을 소숫점인지 메서드 호출인지 구분하지 못하고 있음을 확인하게 된다.
생성자나 toString 으로 형변환은 여기까지...
이번에는 암시적(Implicit)으로 형변환이 일어나는 경우다.
string 과 + 연산자가 만나면 전체가 string 으로 바뀐다.
2. Number 로
생성자를 이용하는 것은 건너 뛰고 바로 암시적 형변환으로 넘어간다.
+ 이외의 산술 연산자를 이용하면 string 이 number로 바뀜을 볼 수 있다.
물론, number로 형변환하는 것이 의미가 있을 경우에 그렇다.
parseInt 나 parseFloat 이용하기
parseInt 가 string 을 number 로 바꾸는 것을 넘어서 진법 변환을 해줌을 확인할 수 있다.
마지막 줄을 보면 number 를 다른 진법의 number로 바꾸는 데도 사용할 수 있음을 알게 된다.
parseInt(혹은 parseFloat)은 위에서 보는 바와 같이 string이 수로 시작하는 경우에 숫자를 살려낸다.
3. Boolean
그냥 다음을 보는 것으로 충분할 것이다.
두 개의 느낌표 !! 는 boolean으로 형변환을 야기한다.
4. Undefined vs Null
Undefined 는 선언만 하고 값을 할당하지 않았을 때,
Null 은 프로그래머가 의도적으로 값을 비웠음을 표시할 때 사용한다.
이로써 엉성하게라도 자바스크립트의 타입들을 살펴봤다.
'Programming Language > JavaScript [초급 -완결]' 카테고리의 다른 글
Quick JavaScript (7) Array 2 (1) | 2022.09.20 |
---|---|
Quick JavaScript (6) Array 1 (0) | 2022.09.10 |
Quick JavaScript (4) Number 1 (0) | 2022.09.03 |
Quick JavaScript (3) Template Literal 과 Symbol (2) | 2022.09.01 |
Quick JavaScript (2) Reference (0) | 2022.09.01 |
- Total
- Today
- Yesterday
- JavaScript
- 세그먼트 트리
- 정수론
- bash script
- 다익스트라
- persistent segment tree
- segment tree
- BOJ
- math font
- Aho-Corasick
- python3
- Reference
- 백준
- max flow
- shell
- javascript array
- C++ big number
- RUBY
- number theory
- script
- Shell Programming
- dynamic programming
- fenwick tree
- Vim
- Dijkstra
- nearest common ancestor
- lazy propagation
- map
- bash
- stack
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |