본문 바로가기
📌 Front End/└ JavaScript

[JavaScript] 자바스크립트 형변환(Type Casting) - 자동, 강제 형변환

by 쫄리_ 2024. 6. 5.
728x90
반응형

형 변환 (타입 변환 : Type Conversion)

  • JavaScript는 자동으로 자료형 변환 기능을 제공합니다.
  • 숫자를 문자로 변환하거나, 문자를 숫자로 변환하는 것을 의미합니다.
  • 자바스크립트는 타입 검사가 매우 유연한 언어입니다.
  • 자바스크립트의 변수는 타입이 정해져 있지 않으며, 같은 변수에 다른 타입의 값을 다시 대입할 수도 있습니다.

형 변환 종류

형 변환은 암시적 형변환과 명시적 형변환이 있습니다.

  • 암시적 형변환 (자동 형변환 - Type Promotion)
  • 명시적 형변환 (강제 형변환 - Type Casting)

👉 자동 형변환

- 다른 타입의 값이 오면, 자동으로 타입을 변환하여 사용
- 자바스크립트는 자동 형변환이 자주 이용

- 작은 크기의 데이터 타입을 큰 크기의 데이터 타입으로 변환하는 행위를 말한다.
  (작은놈이 큰 놈으로 변환)

 

📝 자동 형변환 형태

Number + Sting ▶ Sting 
 ex) 123 + "Hello" ▶ "123Hello"

Boolean + String ▶ String 
     ex) true + "Hi" ▶ "trueHi"

Boolean + Number ▶ Number 
 ex) true + 5 ▶ 6
     true + true + 5 ▶ 7
     (true == 1, false== 0)

 

사용예시

var kingPork = 10;		// number
kingPork += "문자";
console.log(kingPork);		// "10문자" ▶ string  

kingPork = "2";
kingPork *= 1;
console.log(kingPork);		// 2 ▶ number

👉 강제 형변환

- 자동으로 타입 변환을 지원하지만, 명시적으로 변환할 필요가 있을 때 사용

속성 의미
Number(값); 문자를 숫자로 변환
String(값); 숫자나 불린 등을 문자형으로 변환
Boolean(값); 문자나 숫자등을 불린형으로 변환
Object(값); 모든 자료형을 객체형으로 변환
parseInt(문자열); 문자를 int형으로 변환 (문자열 → 정수)
parseFloat(문자열); 문자를 float형으로 변환 (문자열 → 실수)

 

📝 강제 형변환 형태

// 문자 ▶ 숫자
   parseInt( "숫자형태" )
   parseFloat ( "숫자형태" )
   Number( "숫자형태" )

// 숫자 ▶ 문자
   String( 숫자 )
   숫자데이터.toString(n)
   숫자데이터.toFixed(n)

 

사용예시

parseInt("789.123");		// 123
parseInt("29kingPork");		// 29
parseInt("k29");		// NaN
parseInt("029");		// 29
parseInt("0x29");		// 41
parseInt("11101", 2);		// 29
parseInt("09", 10);		// 9
parseInt("10", 9);		// 9 

parseFloat("789.123");			// 789.123
parseFloat("29.5kingPork");		// 29.5
parseFloat("k29");			// NaN
parseFloat("05");			// 5
parseFloat("0x29");			// 0

Javascript에서 8진수는 "0"로 시작하고, 16진수는 "0x"로 시작으로 정의

 

 

728x90
반응형