JavaScript

06. [JavaScript] 타입 변환

drizzle0925 2021. 3. 20. 10:24
728x90

타입 변환(type conversion)

자바스크립트는 타입 검사가 매우 유연한 언어이다.

자바스크립트는 변수에 타입을 선언해주지 않아도 값을 대입할 때 자동으로 타입이 선언된다.

 

1
2
3
4
var value; // undefined
value = "hello"// string type
value = 10// number type
var value; // 한 변수에 여러 번 값을 대입할 수 있지만 변수의 재선언은 할 수 없다
cs

묵시적 타입 변화(implicit type conversion)

자바스크립트는 특정 타입의 값을 기대하는 곳에 다른 타입의 값이 오면, 자동으로 타입을 변환한다.

 

1
2
var val1 = "5" + "3"// 문자열로 처리되서 53
var val2 = "5" * "3" // 숫자로 처리되서 15
cs

NaN(Not a Number)

NaN은 Not a Number의 약자로 정의되지 않은 값이나 표현할 수 없는 값이라는 의미를 가진다.

NaN은 number 타입의 값으로 0으로 0을 나누거나, 숫자로 변환할 수 없는 피연산자로 산술 연산을 시도하는 경우에 반환되는 읽기 전용의 값이다.

 

1
var val1 = 1 - "hello"// NaN
cs

명시적 타입 변환(explicit type conversion)

자바스크립트에서는 묵시적 타입 변환을 많이 사용하지만 명시적으로 타입을 변환할 방법도 제공한다.

명시적 타입 변환을 위해 자바스크립트가 제공하는 전역 함수는 다음과 같다.

 

1. Number()

2. String()

3. Boolean()

4. Object()

5. parseInt()

6. parseFloat()

 

1
2
3
4
Number("10"); // 숫자 10
String(true); // 문자열 "true"
Boolean(0);   // 불리언 false
Object(3);    // new Number(3)와 동일한 결과로 숫자 3
cs

불리언 값을 문자열로 변환

불리언 값을 문자열로 변환하는 방법에는 String() 함수와 toString() 메소드를 사용하는 방법이 있다.

 

1
2
String(true);     // 문자열 "true"
false.toString(); // 문자열 "false"
cs

불리언 값을 숫자로 변환

불리언 값을 숫자로 변환하는 방법에는 Number() 함수를 사용하는 방법이 있다.

 

1
2
Number(true);  // 숫자 1
Number(false); // 숫자 0
cs
728x90