타입의 종류 타입스크립트의 가장 기본적인 타입은 자바스크립트의 7가지 원시 타입과 동일하다. null undefined boolean string number bigint symbol 타입 시스템 타입 시스템은 타입을 이해하는 방법에 대한 규칙의 집합 타입스크립트의 타입 시스템 작동 순서 코드를 읽고 존재하는 모든 타입과 값을 이해함 각 값이 초기 선언...
타입스크립트가 해당 값을 바탕으로 추론을 수행하는 두 가지 핵심 개념 유니언: 타입 확장하기 내로잉: 타입 좁히기 유니언(Union) 타입 > 타입 확장 (OR) 유니언 타입은 정확히 어떤 타입인지 모르지만 두 개 이상의 옵션 중 하나인 경우 사용한다. 수직선 | 연산자를 사용해서 유니언 타입을 나타낸다. 유니언 타입 선언 유니언 타입 선언은 타입 애...
객체 타입 선언 문법 객체 타입은 객체 리터럴과 비슷해보이지만, 필드 값 대 신 타입을 사용해 설명한다. 필드에 타입을 지정 후 ,가 아닌 ;으로 구분한다. 예시 별칭 객체 타입 각 객체 타입에 타입 별칭을 할당해 사용할 수 있다(더 일반적인 방법). 객체 타입을 타입 별칭으로 만들면 할당 가능성 오류 메시지를 좀 더 읽기 쉽게 만들 수 있다. 문법...
매개변수 함수의 매개변수 타입은 명시적으로 타입 정보가 선언되지 않으면 알 수 없다(any 타입으로 간주). 타입 애너테이션으로 매개변수의 타입을 선언할 수 있다. 필수 매개변수 타입스크립트는 함수에 선언된 모든 매개변수가 필수라고 가정한다. 선택적 매개변수 : 앞에 ?를 추가해서 매개변수가 선택적이라고 표시한다. 선택적 매개변수는 항상 암묵적으로 un...
배열 타입 타입스크립트는 초기 배열에 어떤 타입이 들어있는지 기억하고, 배열이 해당 데이터 타입에서만 작동하도록 제한한다. 이런 방식으로 배열의 데이터 타입을 하나로 유지시킨다. 배열 타입 애너테이션은 요소 타입 다음에 [] 을 작성한다. > 📌 Array 으로 작성할 수도 있지만, 대부분은 더 간단한 number[]을 선호한다고 한다. 배열과 함...
인터페이스 인터페이스는 연관된 이름으로 객체 형태를 설명하는 또 다른 방법 타입 별칭으로 된 객체타입과 비슷하지만 다음과 같은 이유로 더 선호된다. 읽기 쉬운 오류 메시지 더 빠른 컴파일 성능 클래스와의 더 나은 상호 운용성 타입 별칭 vs. 인터페이스 아래는 name과 id를 가지는 객체를 각각 타입 별칭과 인터페이스로 구현한 예시 > 📌...
1. 클래스 메서드 독립 함수를 이해하는 것과 동일한 방식으로 메서드와 생성자를 이해한다. 2. 클래스 속성 클래스 속성을 명시적으로 선언해야 읽거나 쓸 수 있다. 클래스 속성 이름 뒤에는 선택적으로 타입 애너테이션이 붙는다. 초기화 검사 엄격한 초기화 검사는 값이 할당되지 않고 선언된 속성이 생성자에서 할당되었는지 확인한다. 확실하게 할당된 속성 !...
1. top 타입 top 타입은 모든 값을 나타낸내는 타입. 즉, 모든 타입은 top 타입에 할당할 수 있다. any 다시 보기 any는 모든 타입이 올 수 있다. 하지만 any는 타입 검사를 수행하지 않도록 명시적으로 지시하기 때문에 안정성이 부족하다는 문제점이 있다. 어떤 값이든 될 수 있음을 나타내려면 unknown 타입이 훨씬 안전하다. un...
제네릭 제네릭을 사용하면 호출하는 방식에 따라 다양한 타입으로 작동하게 만들 수 있다. 타입 매개변수는 전형적으로 T나 U같은 단일 문자 이름 또는 Key, Value 같은 파스칼 케이스로 작명한다. 문법: 이름 ex) someFunction, SomeInterface 1. 제네릭 함수 제네릭 함수 함수를 제네릭으로 만들면 해당 타입 매개변수를 함...