# 03 타입스크립트 기초 문법

- [3.0 타입스크립트 기초 문법](https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/intro.md)
- [3.1 기본 타입](https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/primitive-types.md): 타입스크립트가 제공하는 기본 타입을 살펴본다. 이후 다룰 모든 타입은 이 기본 타입들로부터 파생된다.
- [3.2 배열과 튜플](https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/array-and-tuple.md): 순서가 있는 원소의 모음(collection)을 나타내는 가장 간단하면서도 유용한 자료구조인 배열, 그리고 그 사촌 튜플을 나타내는 타입에 대해 다룬다.
- [3.3 객체](https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/object.md): 자바스크립트에서 가장 일반적이고 널리 사용되는 자료 구조인 객체의 타입에 대해 다룬다.
- [3.4 타입 별칭](https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/type-alias.md): 타입 별칭(type alias)을 이용해 이미 존재하는 타입에 다른 이름을 붙여 복잡한 타입을 간단하게 쓸 수 있다. 또한, 프로그래머의 의도를 보다 명확하게 나타낼 수 있다.
- [3.5 함수](https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/function.md): 자바스크립트 프로그램에서 가장 핵심적인 역할을 차지하는 함수 타입이 타입스크립트에서 어떻게 표현되는지 다룬다.
- [3.6 제너릭](https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/generics.md): 제너릭을 이용해 여러 타입에 대해 동일한 규칙을 갖고 동작하는 타입을 손쉽고 우아하게 정의할 수 있다.
- [3.7 유니온 타입](https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/union-type.md): 유니온 타입을 이용해 “여러 경우 중 하나”인 타입을 표현할 수 있다.
- [3.8 인터섹션 타입](https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/intersection-type.md): 인터섹션 타입을 이용해 “여러 경우에 모두 해당”하는 타입을 표현할 수 있다.
- [3.9 열거형](https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/enums.md): 유한한 경우의 수를 갖는 값의 집합을 표현하기 위해 사용하는 열거형(enum) 타입에 대해 배운다.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
