ice rabbit programming

[JS] 자바스크립트의 데이터 타입(2) 본문

Development/JavaScript

[JS] 자바스크립트의 데이터 타입(2)

판교토끼 2020. 5. 10. 22:15

지난 글에서 설명한 String, Number, Function 타입에 이어서 데이터 타입에 대해 다루려 하는데, 내용이 많을 것 같지는 않다.

네 번째 타입은 Array 타입이다. 배열은 여느 언어에 있는 것과 같이 [같은 타입, 같은 크기]의 변수들을 묶어서 보관하는 타입이다.

var arr = [] // ok
var fruit = ["apple", "banana"]; // ok
var fruit2 = ["apple", "banana", 1]; // 타입이 다르므로 error

console.log(fruit); // 배열 자체
console.log(fruit[0]); // 배열의 첫 번째 index 값

위 fruit 배열과 같이 사용하는 것이 일반적이며, fruit2에서는 같은 타입이라는 규칙에 위배되므로 에러가 난다. 앞의 apple과 banana는 문자열, 1은 숫자이기 때문이다.

C/C++/C#/Java 등을 사용하신 분들은

int arr[5];

와 같은 선언이 익숙하실 텐데, 자바에서는 우변에서 대괄호를 사용하여 Array 타입임을 나타낸다.

다섯 번째 타입은 Object(객체) 타입이다. 객체도 여러 가지 정보를 담는데, 배열과는 다르게 다른 타입들을 담을 수 있다. 크게 Property와 Method로 구성된다.

var student {
    // Property
    name : "DH",
    age : 26,
    skills : ["C#", "C++"],
    // Method
    sum : function(num1, num2) {
    	return num1+num2;
    }
}

console.log(student.name); // 멤버 접근
console.log(student['name']); // 멤버 접근, JSON과 같다

student 객체 안에 name, age, skills이라는 Property와 sum이라는 Method를 가진다.

여섯 번째와 일곱 번째 타입은 undefined와 null이다.
undefined는 변수를 아직 초기화시키지 않아 알 수 없는 상태이고, null은 사용자가 임의로 값을 입력하지 않은 상태이다. 즉, undefined는 아직 변수가 초기화 되지 않은 경우이고, null은 사용자가 빈 값이라고 명시한 것이다.

var und; // undefined
var empty = null // null

 

마지막 여덟 번째 타입은 Boolean이다. 별 다른 것은 없고, 타 언어에서와 마찬가지로 True와 False를 가진다.

var t = true;
var f = false;

 

어느 정도의 객체 지향 개념 등을 알고 있다고 가정한 필자 블로그의 C# 글과는 달리, 자바스크립트는 필자도 정리를 겸하여 기초 강좌를 다시 한 번 듣고 있기 때문에 쉽다고 생각하는 내용도 다소 들어가있을 수 있다. 이미 아는 내용이면 빠르게 스킵을 권한다. 다만 기초적 내용이므로 최소한 1부(?)의 끝까지는 기초적인 내용이 나올 것이다.