전체 글

· TypeScript
1. unknown 타입 (전체 집합)unknown 타입은 타입 계층도의 최 상단에 위치합니다. 따라서 unknown 타입 변수에는 모든 타입의 값을 할당할 수 있습니다. 바꿔 말하면 모든 타입은 unknown 타입으로 업 캐스트 할 수 있습니다. let a: unknown = 1; // number -> unknownlet b: unknown = "hello"; // string -> unknownlet c: unknown = true; // boolean -> unknownlet d: unknown = null; // null -> unknownlet e: unknown = undefined; ..
· TypeScript
1. voidvoid 타입은 아무런 값도 없음을 의미하는 타입입니다.보통은 다음과 같이 아무런 값도 반환하지 않는 함수의 반환값 타입을 정의할 때 사용합니다.function func2(): void { console.log("hello");} 물론 다음과 같이 변수의 타입으로도 당연히 void 타입을 지정할 수 있습니다. 그러나 void 타입의 변수에는 undefiend 이외의 다른 타입의 값은 담을 수 없습니다. 그 이유는 void 타입이 undefiend 타입을 포함하는 타입이기 때문입니다.let a: void;a = undefined; 그런데 만약 이때 tsconfig.json에 엄격한 null 검사(strictNullChecks) 옵션을 해제(False)로 설정하면 특별히 이때에는 void 타입..
· TypeScript
1. any 타입any 타입은 타입스크립트에서만 제공되는 특별한 타입으로 타입 검사를 받지 않는 특수한 치트키 타입입니다.예를 들어 다음과 같이 아주 범용적으로 사용되어야 하는 변수가 하나 있다고 가정합니다.let anyVar = 10;anyVar = "hello"; // 오류 발생!변수 anyVar는 number 타입의 값 10으로 초기화 했지만 이후에 또 string 타입의 값 “hello”를 저장해야 한다고 가정하겠습니다.타입스크립트에서는 변수의 타입이 변수를 초기화할 때 초기화 하는 값을 기준으로 추론하기 때문에 이렇게 하면 오류가 발생합니다.따라서 이럴 때에는 다음과 같이 any 라는 치트키 타입을 이용하면 됩니다.let anyVar: any = 10;anyVar = "hello";anyVar ..
· TypeScript
열거형(Enum) 타입열거형 타입은 자바스크립트에는 존재하지 않고 오직 타입스크립트에서만 사용할 수 있는 특별한 타입입니다.열거형은 다음과 같이 여러개의 값을 나열하는 용도로 사용합니다.enum Role { ADMIN, USER, GUEST,}3개의 멤버 ADMIN, USER, GUEST를 나열한 열거형 타입을 하나 만들었습니다. 설명 편의상 앞으로 열거형 타입을 enum이라 통칭합니다.enum의 각 멤버에는 다음과 같이 숫자를 할당할 수 있습니다.enum Role { ADMIN = 0, USER = 1, GUEST = 2,} 또 다음과 같이 enum의 멤버들을 값으로도 활용 할 수 있습니다.// enum 타입// 여러가지 값들에 각각 이름을 부여해 열거해두고 사용하는 타입enum Role {..
· TypeScript
타입 별칭(Type Alias)타입 별칭을 이용하면 다음과 같이 변수를 선언하듯 타입을 별도로 정의할 수 있습니다// 타입 별칭type User = { id: number; name: string; nickname: string; birth: string; bio: string; location: string;};... type 타입_이름 = 타입 형태로 타입을 정의합니다. 위 코드는 타입 이름으로는 User 그리고 타입으로는 여러개의 프로퍼티가 있는 객체 타입을 정의했습니다.  이렇게 만든 타입 별칭은 다음과 같이 변수의 타입을 정의할 때 타입 주석과 함께 이용할 수 있습니다.type User = { id: number; name: string; nickname: string; bir..
· TypeScript
1. 객체 타입을 정의하는 방법타입스크립트에서는 2가지 방식으로 객체의 타입을 정의할 수 있습니다.object로 정의하기객체 타입을 정의하기에 앞서 먼저 간단한 객체를 하나 만듭니다.let user = { id: 1, name: "이정환",}; 다음으로 user의 타입을 객체를 의미하는 object로 정의합니다.let user: object = { id: 1, name: "이정환",}; 타입이 잘 정의되었습니다. 그런데 이렇게 타입을 정의하면 한가지 문제가 발생합니다.let user: object = { id: 1, name: "이정환",};user.id;위 코드의 user.id 처럼 점 표기법으로 객체의 특정 프로퍼티에 접근하려고 하면 오류가 발생합니다.오류 메세지를 확인해보면 다음과 같이 ..
· TypeScript
배열배열 타입 정의 방법타입스크립트에서는 다음과 같이 배열 타입을 정의합니다.let numArr: number[] = [1, 2, 3]배열을 저장하는 변수의 이름 뒤에 타입 주석의 시작을 의미하는 콜론(:)을 작성한 다음 배열요소타입[] 형식으로 배열 타입을 정의합니다.만약 문자열을 담는 배열의 타입을 정의한다면 다음과 같이 하면 됩니다.let strArr: string[] = ["hello", "im", "winterlood"];배열 요소의 타입이 string이므로 이번에는 string[] 으로 문자열 배열 타입을 정의 했습니다.또는 다음과 같은 형식으로도 배열의 타입을 정의할 수 있습니다.let boolArr: Array = [true, false, true];Array 형태로도 배열의 타입을 정의할..
· TypeScript
기본 타입(Basic Types) 이란?기본 타입이란 타입스크립트가 자체적으로 제공하는 타입들을 말합니다. 기본 타입을 다른 말로는 내장 타입이라고도 할 수 있습니다. 다음 그림은 타입스크립트가 제공하는 기본 타입들을 계층에 따라 분류한 ‘타입 계층도’ 그립입니다. 그림을 자세히 보면 null이나 undefiend 그리고 number나 string 처럼 우리가 흔히 알고 있는 타입들도 존재하고 그 외의 any나 void, never 같은 우리가 처음 보는 타입들도 존재합니다.이렇게 타입스크립트에는 꽤 많은 기본타입들이 제공됩니다. 그리고 이런 각각의 기본 타입들은 서로 부모 자식 관계를 이루며 계층을 형성합니다.원시타입원시 타입(Primitive Type)은 동시에 한개의 값만 저장할 수 있는 타입들을 ..
프론이
개발 Log