[형 변환] 문자형, 숫자형, 불린형
2022. 7. 16. 16:02ㆍ개발자 블로깅/Question
형 변환
함수와 연산자에 전달되는 값은 대부분 적절한 자료형으로 자동 변환됩니다.
이런 과정을 "형변환 (type conversion) 이라고 합니다.
String(value) 문자형으로 변환
let value = true;
alert(typeof value); // boolean
value = String(value); // 변수 value엔 문자열 "true"가 저장됩니다.
alert(typeof value); // string
Number(value) 숫자형으로 변환
let str = "123";
alert(typeof str); // string
let num = Number(str); // 문자열 "123"이 숫자 123으로 변환됩니다.
alert(typeof num); // number
숫자형으로 변환시 적용되는 규칙
alert( Number(" 123 ") ); // 123
alert( Number("123z") ); // NaN ("z"를 숫자로 변환하는 데 실패함)
alert( Number(true) ); // 1
alert( Number(false) ); // 0
| 전달받은 값 | 형 변환 후 |
| undefined | NaN |
| null | 0 |
| true / false | 1 / 0 |
| string | 전달받은 문자열은 "그대로"읽되, 처음과 끝의 공백을 무시합니다. 문자열이 비어있다면 0이 되고, 오류 발생 시 NaN이 됩니다. |
Boolean(value) 불린형으로 변환
alert( Boolean(1) ); // 숫자 1(true)
alert( Boolean(0) ); // 숫자 0(false)
alert( Boolean("hello") ); // 문자열(true)
alert( Boolean("") ); // 빈 문자열(false)
alert( Boolean("0") ); // true
alert( Boolean(" ") ); // 공백이 있는 문자열도 비어있지 않은 문자열이기 때문에 true로 변환됩니다.
| 전달받은 값 | 형 변환 후 |
| 0, null, undefined, NoN, " " | false |
| 그 외의 값 | true |
'개발자 블로깅 > Question' 카테고리의 다른 글
| innerHTML VS innerText VS textContent 차이점 (0) | 2023.01.31 |
|---|---|
| 순수함수란 무엇인가요? 불변성과 사이드 이펙트와 연결하여 설명해주세요. (0) | 2023.01.17 |
| HTTP 메시지 구조에 대해 설명해주세요. (1) | 2023.01.10 |
| 배열, 객체를 const로 선언했는데 요소나 속성을 추가할 수 있는 이유? (2) | 2023.01.09 |
| JavaScript - 엄격모드 (use strict) (0) | 2022.07.15 |