반응형
형 변환
자바스크립트에선 다양한 자료형을 다룰 수 있으며 서로 형 변환이 가능함.
암시적 형 변환(implicit coercion)
자바스크립트에서 자동으로 수행되는 형 변환이며, 일반적으로 연산자를 사용할 때 발생
문자열 변환
console.log(1 + "2"); // "12"
console.log("1" + true); // "1true"
console.log("1" + {}); // "1[object Object]"
console.log("1" + null); // "1null"
console.log("1" + undefined); // "1undefined"
// 문자열과 다른 자료형이 연산자로 결합되어 있으며,
// 이 경우 자바스크립트는 다른 자료형을 문자열로 변환한 후 연산을 수행
숫자 변환
console.log(1 - "2"); // -1
console.log("2" * "3"); // 6
console.log(4 + +"5"); // 9
// 연산자를 사용할 때, 문자열을 숫자로 변환
// 이때, 빈 문자열("")이나 공백 문자열(" ")은 0으로 반환
불리언 변환
console.log(Boolean(0)); // false
console.log(Boolean("")); // false
console.log(Boolean(null)); // false
console.log(Boolean(undefined)); // false
console.log(Boolean(NaN)); // false
console.log(Boolean("false")); // true
console.log(Boolean({})); // true
// Boolean() 함수를 사용하여 불리언 값으로 변환
// 이때 0, 빈 문자열(""), null, undefined, NaN은 false로 반환
// 그 외의 값은 true로 변환
명시적 형 변환(explicit coercion)
개발자가 직접 자료형을 변환
문자열 변환
console.log(String(123)); // "123"
console.log(String(true)); // "true"
console.log(String(false)); // "false"
console.log(String(null)); // "null"
console.log(String(undefined)); // "undefined"
console.log(String({})); // "[object Object]"
// String() 함수를 사용하여 다른 자료형을 문자열로 변환
숫자 변환
console.log(Number("123")); // 123
console.log(Number("")); // 0
console.log(Number(" ")); // 0
console.log(Number(true)); // 1
console.log(Number(false)); // 0
반응형
'backend > JavaScript' 카테고리의 다른 글
| 자바스크립트 함수 (0) | 2023.10.13 |
|---|---|
| 자바스크립트 연산자 (0) | 2023.10.12 |
| 자바스크립트 데이터 타입 (0) | 2023.10.12 |
| 자바스크립트 변수와 상수 (0) | 2023.10.12 |
| 자바스크립트 언어의 특징과 역사 (0) | 2023.10.12 |
