형 변환
1. 문자형으로 변환
명시적
String(값)
- alert 메서드는 문자열 매개변수를 받음
(다른 형의 값을 받으면 문자형으로 자동 형 변환)
let value = true;
alert(typeof value); // boolean
value = String(value); // 변수 value엔 문자열 "true"가 저장됩니다.
alert(typeof value); // string
암시적
빈 문자열('') 더하기
- 덧셈(+)만 문자열로 변환 가능
'10' + '5'
= '105'
'10' - '5'
= 5
'10' * '5'
= 50
2. 숫자형으로 변환
명시적
Number(값)
let str = "123";
let num = Number(str); // 문자열 "123"이 숫자 123으로 변환
암시적
숫자로 연산하기
- 덧셈(+) 제외, 뺄셈(-)은 값이 변함
'10' / 1
= '10
'10' * 1
= 10
+'10'
= 10
'10' + 1
= '101'
* 숫자형으로 변환 시 규칙
Number(undefined)
= NaN
Number(null)
= 0
Number(ture / false)
= 1 / 0
Number(' 123 ')
= 123
* 문자열 ➡ 숫자열로 변환하려고 하면 NaN 출력
let age = Number("임의의 문자열 123");
alert(age); // NaN, 형 변환이 실패합니다.
3. 불린형으로 변환
명시적
Boolean(값)
* 불린형으로 변환 시 규칙
Boolean(1)
= true
Boolean(-10)
= true
Boolean(" ")
= true
Boolean("0") ***
= true
Boolean(0)
= false
Boolean('')
= false
Boolean(undefined)
= false
Boolean(NaN)
= false
암시적
숫자 앞에 부정 연산자(!) 사용하기
!1
= true
!!1
= false
!'안녕'
= false
!!'안녕'
= true