Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- nosql
- Protocol
- Fetch
- Cloud
- til
- supabase
- JavaScript
- TMDB
- data
- web
- Boostrap
- HTML
- 배포
- firestoredatabase
- W
- Github Pages
- REACT
- http
- IntersectionObserver
- CSS
- bootstrap
- github
- url
- Database
- db
- API
- SQL
- useEffect
- this
- jQuery
Archives
- Today
- Total
072DATA
TypeScript 타입 선언하는 방법 본문
타입이란?
타입은 값의 속성이나 메서드를 참조하는 방법
주요 타입
- boolean: 참/거짓을 표현
- number: 숫자 값
- string: 문자열 값
- Array: 배열
- object: 객체
- any: 아무거나 -> 치트키 같은 존재 사용하면 사실상 js가 되어버림
커스텀 타입 선언
타입은 기본 제공 타입 외에도 사용자 정의 타입을 선언할 수 있음
type Profile = {
id: string;
name: string;
age: number;
isMarried: boolean;
}
함수의 타입 선언
함수의 매개변수와 반환 값에도 타입을 선언할 수 있음
function add(a: number, b: number): number {
return a + b;
}
const sum: number = add(1, 2);
타입 별칭 vs 인터페이스
type과 interface는 비슷하지만 차이가 있음
- 타입 별칭: 유니온 타입, 튜플 등 다양한 타입 표현에 유리.
- 유니온 타입: 여러 타입 중 하나를 선택할 수 있는 타입
- 튜플: 고정된 길이와 순서로 각 요소의 타입을 미리 정의한 배열
- 인터페이스: 동일 이름으로 확장 가능 => 객체 형태의 타입을 정의하고 확장할 수 있는 타입
interface Hello {
name: string;
}
interface Hello {
age: number;
} // 확장 가능
구조적 타이핑
TypeScript의 타입 시스템은 구조적 타이핑을 따르며 값의 형태와 구조가 일치하면 같은 타입으로 간주
interface Person {
name: string;
age: number;
}
let p1: Person = { name: "Alice", age: 25 };
let p2 = { name: "Bob", age: 30 };
p1 = p2; // 구조가 동일하면 할당 가능
'FrontEnd > TypeScript' 카테고리의 다른 글
모달창 만들기(리액트, TypeScript) (0) | 2024.10.10 |
---|---|
TodoList 만들기 (1) | 2024.09.26 |
타입스크립트 요약 (0) | 2024.09.24 |