Typescript 13

[Typescript] 클래스 / 제네릭 / 유틸리티 타입

※ 클래스 class Car{ color : string; //미리 선언해줘야 생성자에서 사용가능 constructor(color : string){ this.color = color; } start(){ console.log("start"); } } const bmw = new Car("red"); 미리 선언 하는 대신 readonly 를 이용하는 방법 class Car{ constructor(readonly color : string){ this.color = color; } start(){ console.log("start"); } } const bmw = new Car("red"); ES6 에서 클래스는 다른 객체 지향 언어들처럼 접근제한자를 지원하지 않는다. But 타입스크립트에서는 지원한다. ..

Typescript 2022.12.03

[Typescript] 리터럴 타입 / 유니온 타입 / 교차 타입

※ Literal Types 리터럴 타입 const userName1 = "Bob"; //Bob 타입 let userName2 = "Tom"; // string 타입 userName1 은 string 타입 이지만 const 라서 "Bob" 이외에는 값을 가질 수 없다. => 문자열 리터럴 타입 이라고 한다. userName2 은 현재 Tom 이지만, 다른 값도 가질 수 있으니 string 타입을 갖는다. 만약 userName2 가 추후에 string 이 아니라 number 타입을 갖고 싶다면 ? let userName2 : string | number = "Tom"; // 유니온타입 이렇게 명시해주면 된다. ▶ 문자열 리터럴 타입 type Job = "police" | "developer" | "teac..

Typescript 2022.12.03

[Typescript] Type / interface 함수정의 / 함수 type 정의

Typescript = javascript + type Javascript 는 Dynamic Typing 가능 => 프로젝트가 커질수록 유연성이 높은 것은 좋지않다. Typescript 는 type을 엄격하게 관리해준다. - 에러메세지를 통해 정확하게 에러를 짚어줌 ex ) function add(num1, num2){ console.log(num1,num2); } Javascript add(); //NaN add(1); //Nan Typescript add(); // error : num1:any add(1); // error : Expected 2 arguments, but got 1 ※ Typescript ▷ 선언 let car:string = 'bmw'; let car:string // 타입 추론..

Typescript 2022.12.03