[JavaScript] 타입 변환과 단축 평가

HyeonE·2025년 4월 9일

JS

목록 보기
6/17
post-thumbnail

명시적 타입 변환

let x = 10;

// 숫자를 문자열로 명시적으로 타입 캐스팅
// toString()은 숫자, 불린 등에서 문자열로 바꾸는 명시적 메서드
let str = x.toString();
console.log(typeof str, str); // string, '10'

// 원본 x는 변하지 않는다
console.log(typeof x, x); // number, 10

// 반대로 문자열 → 숫자는 Number() 같은 생성자 사용 가능
Number("123"); // 123

Boolean(1);    // true

암묵적 타입 변환

  • 이런 방식은 자주 쓰이지만, 암묵적인 만큼 주의해서 써야 합니다.
let x = 10;

// 숫자 + 문자열 → 문자열
let str = x + ""; // ← ""와 더하면서 문자열로 변환됨
console.log(typeof str, str); // string, '10'

피연산자가 모두 문자열 타입이어야 하는 문맥

  • +연산자는 문자열과 만나면 문자열 연결자로 동작합니다.
// "10" + 2 → "10" + "2" → "102"
"10" + 2; // '102'

피연산자가 모두 숫자 타입이어야 하는 문맥

  • *, -, / 연산자는 문자열을 암묵적으로 숫자로 변환해서 계산해요.
// "10"은 숫자 10으로 변환됨 → 5 * 10
5 * "10"; // 50

falsy data (기억하는게 좋다)

// 다음 값들은 모두 false로 평가됨 (조건문 등에서)
0;
"";
null;
undefined;
false;
NaN;

// 그 외의 모든 값은 truthy로 간주됩니다!
profile
프론트엔드 개발자가 되고싶은 대학생

0개의 댓글