JavaScript

22.02.21 타입 캐스팅

슈팅스타제제 2022. 2. 22. 00:44

아래와 같이 하나는 string 타입의 변수, 다른 하나는 number 타입의 변수가 있다.

const balance = '3'

const count = 1

1. 문자와 숫자의 합

console.log(balance + count)
//expected: 31

 

2. 문자의 암묵적 타입 변환

+balance //라고 한다면?

string에 +를 붙일 수 있나? 

그렇다면 아래 식은 계산 가능한가? 에러가 나지 않을까? 안난다. balance 를 넘버 타입으로 생각하고 계산한다.

console.log(+balance - 1)
//expected: 2

3. 숫자의 문자화

//숫자에 문자 타입을 씌워주는 것처럼!
0 + '' = '0'

 

참고문서링크: 

https://poiemaweb.com/js-type-coercion

 

Type coercion | PoiemaWeb

자바스크립트의 모든 값은 타입이 있다. 값의 타입은 다른 타입으로 개발자에 의해 의도적으로 변환할 수 있다. 또는 자바스크립트 엔진에 의해 암묵적으로 자동 변환될 수 있다. 개발자에 의해

poiemaweb.com