군침이 싹 도는 코딩

형변환 본문

JavaScript/Basic

형변환

mugoori 2023. 6. 26. 11:44
const mathScore = prompt("수학 몇점?"); // 90 입력
const engScore = prompt("영어 몇점?"); // 80 입력
const result = (mathScore + engScore) / 2;

console.log(result)

>> 4540

# 해당 값이 4540이 나오는 이유는 prompt 는 값을 무조건 문자열로 리턴한다

따라서 9080 이 되어 나누기 2를 하므로 4540이 나오게 된다

 

나누기 2가 제대로 동작한 이유는 자동 형변환 때문이다

따라서 해당 값을 제대로 받으려면

 

const mathScore = prompt("수학 몇점?"); // 90 입력
const engScore = prompt("영어 몇점?"); // 80 입력
const result = ( Number(mathScore) + Number(engScore) ) / 2;

console.log(result)

>> 85

# 형변환 할 타입을 적고 괄호안에 변수를 넣어주면 된다

String() 문자열

Number() 숫자

Boolean() 불린형

 

 

Number(null) // 0
Number(undefined) // NaN

Number(0) // false
Number("0") // true

Number("") // false
Number(" ") // true

# 주의 사항 

prompt 에서 입력을 받을때 아무것도 입력하지 않고 취소 버튼을 누르면 null 값을 반환한다

이때 null은 0으로 인식한다

'JavaScript > Basic' 카테고리의 다른 글

변수, 호이스팅, TDZ(Temporal Dead Zone)  (0) 2023.06.26
연산자 ( 증가 연산자 , 감소 연산자 )  (0) 2023.06.26
대화 상자 ( alert, prompt, confirm )  (0) 2023.06.26
자료형 ( typeof )  (0) 2023.06.26
변수 ( let, const )  (0) 2023.06.26