typescript 기본 문법 알려줘
ChatGPT의 말:
TypeScript는 JavaScript에 정적 타입을 추가한 언어입니다. 아래는 가장 기본적인 문법들을 정리한 예제입니다.
✅ 1. 변수 선언
let name: string = "Alice";
let age: number = 30;
let isAdmin: boolean = true;
✅ 타입 추론
let city = "Seoul"; // string으로 추론됨
✅ 2. 배열과 튜플
let numbers: number[] = [1, 2, 3];
let users: string[] = ["Alice", "Bob"];
let tuple: [string, number] = ["Age", 25];
✅ 3. 객체 타입
let user: { name: string; age: number } = {
name: "Jane",
age: 28
};
✅ 4. 인터페이스
interface User {
name: string;
age: number;
isAdmin?: boolean; // 선택적 속성
}
const admin: User = { name: "Tom", age: 40 };
✅ 5. 함수 선언
function greet(name: string): string {
return `Hello, ${name}`;
}
✅ 화살표 함수
const add = (a: number, b: number): number => a + b;
✅ 6. 유니언 / 교차 타입
let status: "loading" | "success" | "error";
status = "loading";
type Admin = { role: "admin" };
type Member = { role: "member" };
type Person = Admin | Member;
✅ 7. 제네릭
function identity<T>(value: T): T {
return value;
}
let output = identity<string>("hello");
✅ 8. 타입 단언 (Type Assertion)
let value: any = "hello";
let length: number = (value as string).length;
✅ 9. 타입 정의 vs 인터페이스
// 둘 다 객체 타입을 정의할 수 있음
type UserType = { name: string };
interface UserInterface { name: string };
✅ 10. 기타
- enum, readonly, never, unknown 등의 키워드도 존재
- type은 확장성에서 interface보다 자유롭지만 interface는 상속 구조에 적합
'ChatGPT와 Next.js 공부' 카테고리의 다른 글
Next.js + Firebase 프로젝트 코드를 github에 저장하려면? (0) | 2025.05.11 |
---|---|
next.js 개인 프로젝트를 웹 배포하는 방법 (0) | 2025.05.11 |
next.js 개발 환경은? (0) | 2025.05.11 |
next.js란? (0) | 2025.05.11 |
Firebase + Vercel을 함께 사용하는 구조는? (0) | 2025.05.11 |