타입 강제 변환
Coddy JavaScript 여정의 기초 섹션에 포함된 레슨 — 77개 중 22번째.
자바스크립트에서 타입 강제 변환(Type coercion)은 값을 한 데이터 타입에서 다른 데이터 타입으로 자동 변환하는 것을 의미합니다. 이는 특정 연산에서 암시적으로 발생하거나, String(), Number(), 또는 Boolean()과 같은 함수를 사용할 때 명시적으로 발생할 수 있습니다.
암시적 형 변환은 느슨한 동등 연산자 ==를 사용하거나, 숫자를 문자열에 더하는 것과 같이 서로 다른 타입 간의 연산을 수행할 때 자주 발생합니다.
예를 들어:
let result = 5 + "5";
// "55"를 가집니다. 숫자 5가 암시적으로 문자열 "5"로 변환된 후 연결되기 때문입니다.let result = true == 1;
// 불리언 true가 숫자 1로 암시적으로 변환되기 때문에 true가 됩니다명시적 타입 변환은 내장 함수를 사용하여 수행할 수 있습니다:
String(value)는 값을 문자열로 변환합니다
Number(value)은(는) 값을 숫자로 변환합니다
Boolean(value)값을 불리언으로 변환합니다
예를 들어:
let num = "123";
let str = Number(num) + 7; // 130을 가짐
console.log(str); let bool = true;
let numBool = Number(bool); // 1을 가집니다타입 강제(type coercion)를 이해하는 것은 정확한 JavaScript 코드를 작성하고 예상치 못한 결과를 방지하는 데 매우 중요합니다.
챌린지
초급여러 가지 타입의 변수들이 포함된 코드가 주어집니다.
여러분의 작업은 타입 강제 변환(type coercion)을 수행하고 그 결과를 출력하는 것입니다:
- 숫자
num을 문자열로 변환하여a라는 이름의 변수에 저장하세요. - 불리언
bool을 숫자로 변환하여b라는 이름의 변수에 저장하세요. - 문자열
str을 숫자로 변환하여c라는 이름의 변수에 저장하세요. num과str을 연결하여 암시적 타입 강제 변환을 수행하고, 그 결과를d라는 이름의 변수에 저장하세요.
처음 세 작업에는 명시적 타입 변환 함수(String(), Number())를 사용하고, 마지막 작업에서는 암시적 강제 변환이 일어나는 것을 관찰하세요.
치트 시트
JavaScript에서의 타입 강제 변환(Type coercion)은 값의 데이터 타입을 한 타입에서 다른 타입으로 자동 변환하는 것을 의미합니다.
암시적 타입 강제 변환(Implicit type coercion)은 연산 중에 자동으로 발생합니다:
let result = 5 + "5"; // "55" - number converted to string
let result = true == 1; // true - boolean converted to number명시적 타입 강제 변환(Explicit type coercion)은 내장 함수를 사용합니다:
String(value)는 값을 문자열로 변환합니다Number(value)는 값을 숫자로 변환합니다Boolean(value)는 값을 불리언으로 변환합니다
let num = "123";
let str = Number(num) + 7; // 130
let bool = true;
let numBool = Number(bool); // 1직접 해보기
// 주어진 변수
let num = 42
let bool = false
let str = "7"
// 아래에 코드를 입력하세요
// 아래 줄을 변경하지 마세요
console.log(`a = ${a}`)
console.log(`b = ${b}`)
console.log(`c = ${c}`)
console.log(`d = ${d}`)이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.