본문 바로가기

전체 글92

Interface - 타입 체크를 위해 사용된다. - 변수, 함수, 클래스에 사용할 수 있다. - 여러 타입을 갖는 프로퍼티로 이루어진 새로운 타입으로 정의하는 것과 유사하다. - 프로퍼티 및 메서드의 구현을 일관성 있게 유지하는 역할을 한다. ​ (1) 변수와 인터페이스 - 인터페이스틑 변수의 타입으로 사용할 수 있다. - 인터섹션 타입을 이용하여 하나의 인터페이스 타입으로 만들 수 있다. interface a { x: number; y: string; z: boolean; } interface b { x: number; w: string; v: boolean; } let c: a; c = { x: 26, y: 'wangi', z: false }; // 변수 c는 인터페이스 a에 맞춰 선언해야한다. let d : a &.. 2023. 9. 5.
타입 앨리어스 - 이미 존재하는 타입을 부르는 또 다른 이름을 정의하는 것이다. - 인터페이스와 유사하다. type a { x: string, y?: number } const b = {} as a; // 빈 객체를 a 타입으로 지정 b.x = 'wangi'; b.y = 26; b.z = 'eddy'; // Error - 인터페이스와 다르게 원시값, 유니온 타입, 튜플 등도 타입으로 지정 가능하다. - 타입 앨리어스는 extends나 implements 될 수 없다. 2023. 9. 4.
Generic - 선언 시점이 아닌 생성 시점에 타입을 명시하여 하나의 타입이 아닌 다양한 타입을 사용할 수 있도록 하는 기법이다. - 한 번의 사용으로 다양한 타입에 재사용이 가능하다. - T는 제네릭을 선언할 때 관용적으로 사용되는 식별자이다. (반드시 T를 사용하는 것은 아니다.) function a(arg: T): T { return arg; } let x = a("wangi"); console.log(x); // wangi 출력 타입은 string let y = a("wangi"); console.log(y); // wangi 출력 타입은 string let z = a(12); console.log(z); // 12 출력 타입은 number - class에서 generic 사용이 가능하다. 클래스 이름 뒤에 .. 2023. 9. 1.
Module - 재사용이 가능한 코드 조각을 의미한다. - 자체 스코프 내에서 실행된다. - 모듈에서 데이터를 불러오는 import와 모듈에서 데이터를 내보내는 export로 나누어져 있다. ​ (1) export - 모듈의 변수, 함수, 타입 등을 외부 모듈이 사용할 수 있도록 표시한 키워드이다. export var a = "wangi"; // export data export function b(x, y) { // export function 방법1 : 정의와 동시에 export return x + y; } function c(x, y) { // export function 방법2 : 정의 후 함수 이름으로 export return x * y; } export { c }; export class d{ // exp.. 2023. 8. 31.