자바스크립트는 필요에 따라 그 값을 변환한다. 문맥에 따라 여러가지 값들을 자동으로 변환시켜준다.
표를 참고하자.
| 값 | 문자열 문맥 | 숫자 문맥 | 불리언 문맥 | 객체 문맥 |
|---|---|---|---|---|
| undefined | "undefined" | NaN | false | Error |
| null | "null" | 0 | false | Error |
| 빈 문자열이 아닌 문자열 | 그 자체 | 나타내는 숫자 or NaN | true | String 객체 |
| 빈 문자열 | 그 자체 | 0 | false | String 객체 |
| 0 | "0" | 그 자체 | false | Number 객체 |
| NaN | "NaN" | 그 자체 | false | Number 객체 |
| 무한대 | "Infinity" | 그 자체 | true | Number 객체 |
| 음의 무한대 | "Infinity" | 그 자체 | true | Number 객체 |
| 기타 숫자 | 숫자를 문자열로 표현 | 그 자체 | true | Number 객체 |
| true | "true" | 1 | 그 자체 | Boolean 객체 |
| false | "false" | 0 | 그 자체 | Boolean 객체 |
| object | toString() | ValueOf(), toString(), NaN | true | 그 자체 |