형변환

김하은·2023년 4월 20일
0

형 변환
함수와 연산자에 전달되는값은 대부분 알맞은 자료형으로 자동변환된다.
이러한것을 형 변환이라고 한다.

또는 의도를 가지고 원하는 타입으로 변환하는 명시적 변환도 형 변환이라고 할 수 있다.


문자형으로 변환

alert(value)에서 value는 문자형이어야 한다.
따라서 다른 형이 들어간다면 자동으로 문자형으로 변환되나.

String(value)로 만들어 전달받은 값을 문자열로 변환할 수도 있다.(명시적 방법)

문자형으로의 변환은 얘측가능하다.


숫자형으로 변환

수학과 관련된 함수와 표현식에서 일어난다.

alert("6"/"2"); 의 경우 문자열이 자동으로 숫자형으로 변환되어 연산이 된다.

Number(value)함수로 주어진 value를 숫자형으로 변환할 수 있다.(명시적방법)

숫자 외의 글자(문자)가 들어있는 문자열을 숫자형으로 변환하려 한다면 NaN이라고 나온다.

  • Number(undefined) => NaN
  • Number(null) => 0
  • Number(true) => 1
  • Number(false) => 0
  • Number(어떤 문자열) => 문자열과 처음과 끝의 공백은 제거되고,
    공백 제거 후 남아있는 문자열이 없다면 0 이,
    문자열이 남아있다면 이중 숫자를 읽고 변환에 실패한다면(문자열에 숫자가 섞여있는경우) NaN을 반환한다.

Boolean형으로 변환

숫자 0, 빈문자열, null, undefined, NaN은 false,
그 외의 값은 true가 된다.

일부 언어에서는 문자열"0" 을 false로 취급하기도 하지만 자바스크립트에서는 비어있지 않는 문자열은 언제나 true!!!

참고로 "" 얘는 비어있는 문자열이라 당연히 false이고,
" " 얘는 스페이스가 들어가 비어있지 않은 것으로 보기때문에 true.

0개의 댓글