Lecture 02: Type casting

송현민·2025년 1월 16일
0

자바스크립트에서 타입 캐스팅(Type Casting)은 데이터를 한 타입에서 다른 타입으로 변환하는 과정으로, 크게 명시적 타입 변환(Explicit Type Conversion)과 암묵적 타입 변환(Implicit Type Conversion)으로 나뉩니다


1. 명시적 타입 변환 (Explicit Type Conversion)
명시적 타입 변환은 개발자가 코드에서 의도적으로 데이터 타입을 변환하는 것을 의미합니다. 이를 위해 자바스크립트는 다양한 내장 함수와 메서드를 제공합니다.


1-1) 문자열로 변환

let num = 10;
let str = String(num); // "10"
let str2 = num.toString(); // "10"

1-2) 숫자로 변환

let str = "123";
let num = Number(str); // 123
let intNum = parseInt("123.45"); // 123
let floatNum = parseFloat("123.45"); // 123.45

1-3) 불리언으로 변환

let isTrue = Boolean(1); // true
let isFalse = !!0; // false

2. 암묵적 타입 변환 (Implicit Type Conversion)
암묵적 타입 변환은 자바스크립트 엔진이 코드의 문맥(Context)에 따라 자동으로 데이터 타입을 변환하는 것을 의미합니다. 이를 타입 강제 변환(Type Coercion)이라고도 합니다.


2-1) 문자열로 변환

let result = 10 + " apples"; // "10 apples"

문자열과 다른 타입을 + 연산자로 결합하면, 다른 타입이 문자열로 변환됩니다.


2-2) 숫자로의 변환

let result = "5" * 2; // 10

산술 연산자(-, *, /) 사용 시, 문자열이 숫자로 변환됩니다.


2-3) 불리언으로의 변환

if ("") {
    console.log("Falsy"); // 실행되지 않음
}
if (1) {
    console.log("Truthy"); // 실행됨
}

조건문 등에서 값이 Truthy(참으로 평가) 또는 Falsy(거짓으로 평가)로 자동 변환됩니다.
Truthy 값: 숫자 1, "string", 객체 등
Falsy 값: 0, ""(빈 문자열), null, undefined, NaN

0개의 댓글