자바스크립트 타입 구분

(2018-11-29)
1. 자바스크립트 타입 구분 및 판단하기

  ※ typeof 연산자 적용 결과로, 다음 6개 종류의 타입 구분이 가능
     - string, number, boolean, undefined, object, function, symbol

  ㅇ 문자열 타입  : 例) typeof unkownVariable => `string`
     - 타 언어 처럼 별도의 char 타입이 존재 안함

  ㅇ 숫자 타입    : 例) typeof unkownVariable => `number`      ☞ 자바스크립트 수치 활용 참조
     - 타 언어 처럼 실수형,정수형 등으로 구분 않고, 
        . 단순성을 위해 숫자형에 하나의 데이터타입(number 타입) 만 가능
     - 내부적으로, 8 바이트 (64 비트 부동소수점) 로써 표현
        . 표현 범위 : 1.7976931348623157x10308 ~ 4.940656458412465x10-324
        . 정수 표현 범위 : -253=-9007199254740992 ~ 253=9007199254740992
     - 특수한 기호 例) typeof 0/0 => NaN (Not-a-Number) : 숫자가 아니거나, 계산 불능

  ㅇ 불리언 타입  : 例) typeof unkownVariable => `boolean`
     - 표현식 평가 결과 값이 예약어인 true,false 중 하나로 평가됨

     * 한편, 표현식 자체가 다음과 같을 때,
        . 빈 문자열(""),0(숫자 제로),NaN,null,undefined,false 일 때, => false 로 평가됨
        . 그 이외의 것일 때, => true 로 평가됨

  ㅇ undefined 타입 : 例) typeof unkownVariable => `undefined`
     - 선언 만 하고, 어떤 값도 대입 않은 경우 (변수 초기화 또는 변수 정의가 안됨)를 나타냄
        . 선언 만 하고, 값을 아직 할당하지 않은 변수의 값
        . 없는 `객체프로퍼티`,`배열의 요소`를 읽으려고 시도할 때의 값
        . 아무 것도 반환하지 않은 함수가 반환하는 값
        . 함수를 호출했을 때 전달 받지 못한 파라미터(인수)의 값

     * 한편, null 값은,
        . 아무것도 없음을 값으로 표현한 것 (빈 객체)
           .. 통상, 프로그램(함수등)이,
           .. 검색후 해당 값을 못 찾았을 때, 메모리 할당 실패시 등에, 넘겨주는(반환) 값
        . 의미 상 undefined와 같지만, 
           .. null 값은 object 타입으로 판정 함

  ㅇ 객체 타입  : 例) typeof unkownVariable => `object`         ☞ 자바스크립트 객체 참조
     - 변수가 `null`, `배열`, `객체` 일 때
        . 한편, null은 빈 객체를 참조하는 특별한 값임

  ㅇ 함수 타입  : 例) typeof unkownVariable => `function`       ☞ 자바스크립트 함수 참조
     - 사실상, 자바스크립트 함수는,
        . 그 자신이 객체이며, 다른 객체를 생성할 수 도 있는 특별한 객체이나,
     - 타입 구분(typeof)은 별도로 'function`으로 표시됨

  ㅇ 심볼 타입 : 例) typeof Symbol("car") => `symbol`


[JS 변수,타입] 1. JS 논리값 2. JS 변수,타입 3. JS 타입 구분 4. JS 타입 변환 5. 변수 호이스팅

 
        최근수정     요약목록     참고문헌