문자, 숫자, 논리형으로의 형 변환은 자주 일어나는 형 변환입니다.
문자형으로 변환
은 무언가를 출력할 때 주로 일어납니다. String(value)
을 사용하면 문자형으로 명시적 변환이 가능합니다. 원시 자료형을 문자형으로 변환할 땐, 대부분 그 결과를 예상할 수 있을 정도로 명시적인 방식으로 일어납니다.
숫자형으로 변환
은 수학 관련 연산시 주로 일어납니다. Number(value)
로도 형 변환을 할 수 있습니다.
숫자형으로의 변환은 다음 규칙을 따릅니다.
전달받은 값 | 형 변환 후 |
---|---|
undefined | NaN |
null | 0 |
true / false | 1 / 0 |
string | 전달받은 문자열을 “그대로” 읽되, 처음과 끝의 공백을 무시합니다. 문자열이 비어있다면 0이 되고, 오류 발생 시 NaN이 됩니다. |
불린형으로 변환
은 논리 연산 시 발생합니다. Boolean(value)
으로도 변환할 수 있습니다.
불린형으로의 형 변환은 다음 규칙을 따릅니다.
전달받은 값 | 형 변환 후 |
---|---|
0, null, undefined, NaN, "" | false |
그 외의 값 | true |
형 변환 시 적용되는 규칙 대부분은 이해하고 기억하기 쉬운 편에 속합니다. 다만 아래는 예외적인 경우이기 때문에 실수를 방지하기 위해 따로 기억해 두도록 합시다.
undefined
는 0
이 아니라 NaN
이 됩니다."0"
과 " "
같은 공백은 불린형으로 변환 시 true가 됩니다.