LHJ

I'm a FE developer.

2-8. 기본 문법 / 데이터 타입(Data Type)

16 Nov 2020 » js_beginner

13. 데이터 타입(Data Type)

  • 데이터(Data)의 사전적 의미는 자료

    • 강좌에서는 데이터로 표기

  • 데이터 타입(Type) 형태

    • 숫자 타입 : var value = 123;
    • 문자 타입 : var value = “sports”;

  • typeof 연산자

    • 데이터(값) 타입 반환
    • typeof value에 데이터를 작성

        var point = 123;
        console.log(typeof point); // number
              
        var book = "";
        console.log(typeof book); // string
      
      1. 123은 숫자이므로 데이터 타입은 number
      2. “책”은 문자이므로 데이터 타입은 string
        문자는 “책”처럼 큰따옴표 안에 작성하거나 ‘책’처럼 작은따옴표 안에 작성합니다.
      3. typeof 연산자는 고려사항이 있으며 관련된 곳에서 다시 다룹니다.

  • 키워드(keyword)

    • 특별한 기능을 가진 단어 (typeof 처럼 특별한 기능을 가집니다.)

데이터 타입

  • 데이터 타입을 자료형이라고도 부름

    • 강좌에서는 데이터 타입으로 표기

  • 데이터는 반드시 타입을 가짐

    • JS는 데이터를 기준으로 타입을 결정
    • 타입을 먼저 선언하고 타입에 맞는 데이터를 할당하지 않음 (타입을 먼저 선언하고 타입에 맞는 데이터를 할당하는 언어도 있습니다.)

        var point = 123;
        console.log(typeof point); // number
              
        point = "";
        console.log(typeof point); // string
      
      1. point 변수에 123을 할당하면 point 변수의 데이터 타입은 number입니다.
      2. 다시 point 변수에 “책”을 할당하면 point 변수의 데이터 타입은 string이 됩니다.
      3. JS는 이처럼 데이터(값)에 따라 데이터 타입이 결정됩니다.

C++이나 JAVA 같은 언어는 이 변수의 type은 integer이다! 라고 선언을 먼저하고, 그 변수에 integer 값을 할당합니다.
즉 C++이나 JAVA는 변수를 보면 type을 알 수 있습니다.
하지만 자바스크립트는 변수만 보고 데이터 type을 확정지을 수 없습니다.

이 사실이 왜 중요할까?

var point = 123;

위 point 변수에다 100을 더하면 223이 될 것입니다.

var point = "";

하지만 point에 담긴 값이 위와 같다면 전혀 다른 결과가 나올 것입니다.
혹은 에러가 날 수도 있습니다.
그렇기 때문에 데이터 type은 매우 중요합니다.