형변환은 왜 필요할까?

 

문자열과 문자열을 더하면 두 문자열을 이어서 보여준다.

숫자와 숫자를 더하면 두 수를 합하여 보여준다.

하지만 자료형이 다르면 의도치 않은 동작이 발생할 수 있다.

 

 

const mathScore = prompt(“수학 점수를 입력해주세요.”); //90 입력

const engScore = prompt(“영어 점수를 입력해주세요.”); //80 입력

const result = (mathScore + engScore) / 2;

 

console.log(result); //4540 출력

 

이러한 결과가 나온 이유는 prompt로 입력 받은 값은 문자형이기 때문이다.

위에서 “90” + “80” = “9080” 이 되고 “9080”/2 = 4540이 된 것이다.

 

 

여기서 + 는 문자열+문자열이 되어 두 문자열을 연결시켜준 것이고, /2는 숫자형으로 변환되어 계산된 것이다. 이러한 것을 자동 형변환이라고 한다.

자동 형변환은 원인을 찾기 힘든 에러를 발생시킬 수 있기 때문에 명시적 형변환을 해주는 것이 좋다.

 

1.      String() → 문자형으로 변환

2.      Number() → 숫자형으로 변환

3.      Boolean() → 불린형으로 변환

 

1. String()

String(3)				→		“3”

String(true)			→		“true”

String(null)			→		“null”

String(undefined)		→		“undefined”

 

2. Number()

Number(“1234”)		→		1234

Number(“12abc”)		→		NaN

Number(true)			→		1

Number(false)			→		0

Number(null)			→		0

Number(undefined)		→		NaN

 

주의사항

Number(0)			→		true

Number(‘0’)			→		false

Number(‘’)				→		false

Number(‘ ’)			→		true

 

3. Boolean()

불린형의 변환은 false만 기억하고 있으면 된다. false에 해당하는 값 이외에는 모두 true를 반환한다.

 

false

-         숫자 0

-         빈 문자열 ‘’

-         null

-         undefined

-         NaN

 

 

 

↓[코딩앙마] 자바스크립트 기초 강좌 링크

https://www.youtube.com/watch?v=CwOlWQ1mAqg 

 

+ Recent posts