카테고리 없음

자바스크립트 기초(3)_형 변환

밍블리-셔 2024. 12. 31. 16:56

String() : 문자형으로 변환

Number() : 숫자형으로 변환

Boolean() : 불린형으로 변환

 

 

형 변환이 왜 필요할까?

ex) 수학과 영어 점수를 입력받아 평균을 구하는 프로그램을 만들 경우

const mathScore = prompt("수학 점수를 입력해주세요."); //90
const engScore = prompt("영어 점수를 입력해주세요."); //90
const result = (mathScore + engScore) / 2; // 곱셈,나눗셈이 덧셈,뺄셈보다 먼저 계산되기 때문에 ()괄호를 넣어준다
console.log(result); //결과 값 : 4545

 

결과 값이 4545로 나오는 이유

: prompt로 입력받은 값은 무조건 문자형 "90"+"90" = 180이 아닌 "9090"

9090 / 2 = 4545 --> 숫자형이 아니더라도 나누기 같은 표현시은 숫자형으로 자동 변환되어 계산됨

 

이것을 "자동 형변환" 이라고 한다.

 

 

하지만 이런 작업들은 원인을 찾기 힘든 에러를 발생 시킬 수 있으니 의도를 가지고 형변환을 해주는 것이 좋다! 

"명시적 형변환"

 

 

String() : 문자형으로 형변환 

console.log(
String(3),
String(true),
String(false),
String(null),
String(undefined)
)

 

 

Number() : 숫자형으로 형변환

console.log(
Number("1234"), //1234
Number(true), //1
Number(false), //0
Number("minji"), //NaN 문자형은 NaN으로 반환
Number(null), //0 (prompt 에서 취소 버튼을 누르면 null로 반환되고 Number(null)은 0이 됨)
Number(undefined) //NaN
)

 

 

 

Boolean() : 불린형으로 형변환

✅ false 의 경우만 기억하자!

숫자 0 / 빈 문자열 "" / null / undefined / NaN

* 위 경우를 제외하고는 모두 true

 

 

주의사항

Boolean(0); //false
Boolean('0'); //true

Boolean(""); //false
Boolean(''); //true(공백)