Programming Language/Node.js(13)
-
TypeScript에 대한 간단한 정리 - 10. 클래스와 접근 제어자
▶클래스(Class)클래스는 객체를 생성하기 위한 청사진이다.속성과 메서드를 정의해서 사용할 수 있고 이 클래스를 사용해서 객체를 만들 수 있다. 클래스의 구성요소로는 필드, 생성자, 메서드가 있다. ▷필드클래스가 가지는 데이터(속성)를 지칭하고 타입을 명시적으로 지정할 수 있다.class ClassName { field1 : string; field2 : number; . . . . }이렇게 클래스의 안에 인터페이스에서 속성 선언하듯 선언해주면 이걸 클래스에서는 필드라고 부른다. ▷생성자(Constructor)클래스가 인스턴스를 생성할 때 호출되는 메서드로 필드의 초기화 작업을 수행하는 기능을 한다.class ClassName { field1 : string; fiel..
01:04:16 -
TypeScript에 대한 간단한 정리 - 09. 함수 - 오버로딩(Overloading)
타입스크립트에서 함수 오버로딩은 동일한 함수 이름으로 여러 가지 다른 형태의 함수 시그니처를 정의할 수 있게 해주는 기능으로 하나의 함수 이름으로 다양한 인자와 반환 값을 처리할 수 있다. 함수 오버로딩에 대해서 알아보기 전에 먼저 함수 시그니쳐에 대해서 알아봐야 하는데 함수 시그니쳐란 함수의 형태를 정의하는 것으로 함수의 이름, 매개변수의 타입, 반환값의 타입에 대해서 미리 정의해서 함수가 어떤 입력을 받고, 어떤 출력값을 반환하는지를 명시해주는 방식을 말한다. 이는 코드에서 발생할 수 있는 타입 오류를 사전에 방지할 수 있는데 함수 시그니쳐를 사용하는 방법은 function 함수명(매개변수1: 타입1, 매개변수2: 타입2): 반환타입;과 같이 선언해주면 된다. 이렇게 함수 시그니처를 선언한다면 이걸 ..
2024.12.20 -
TypeScript에 대한 간단한 정리 - 08. 함수 - 명시적 this 타입
타입스크립트에서는 함수 내부에서 사용되는 this 키워드의 타입을 명시적으로 정의할 수 있다.원래 자바스크립트에서는 함수의 this를 호출 방식에 따라서 동적으로 결정하는데 타입스크립트에서는 이걸 명시적으로 지정해서 호출 할때 this의 타입을 고정 시킬 수 있다. 기본적으로 선언하는 방식은 function 함수명(this: 타입(보통 객체의 타입), ...): ReturnType { // 함수 내용}과 같이 사용한다. 인터페이스에서 this에 대해서 한번 보자면 이렇게 인터페이스를 생성한 다음에 함수에서 이렇게 this를 사용하고 싶다고 생각해보자. 이럴때 사용하는 메서드가 call이란 메서드인데 call메서드는 자바스크립트의 모든 함수에서 사용할 수 있는 메서드로 함수를 호출 할때 첫번째 인자로 객..
2024.12.20 -
TypeScript에 대한 간단한 정리 - 07. 타입 별칭(Alias)
타입 별칭은 타입에 이름을 붙이는 것을 말한다.이 타입 별칭을 사용해서 기본 타입, 복잡한 객체 타입, 유니온 타입등 과 같은 타입을 재사용할 수 있고, 코드의 가독성과 유지보수를 쉽게 할 수 있다. 타입 별칭은 type이란 키워드를 사용해서 정의하고 인터페이스와 비슷하나 더 유연한 방식으로 타입을 표현하여 사용이 가능하다. 타입별칭의 기본적인 문법은 type 별칭명 = 타입;과 같이 사용하고 타입에는 기본타입, 객체타입, 유니온타입, 인터섹션 타입등 어떠한 타입도 들어갈 수 있다. 기본타입에 대해서 별칭을 사용하면 type ID = string;const userId : ID = "testUser";const keyId : ID = "Key123"과 같이 사용이 가능하다. 객체 타입에 대해서 별칭을 사..
2024.12.20 -
TypeScript에 대한 간단한 정리 - 06. 인터페이스 - 인덱싱 가능 타입 , 확장(상속)
인덱싱 가능 타입타입스크립트에서 인터페이스에서 인덱싱 가능 타입은 인덱스 시그니처를 사용하여 객체가 특정 키로 값을 접근할 수 있게 정의하는 방법을 말한다.이를 통해 객체가 특정 타입의 키를 사용해서 접근할 수 있는 값을 가질 수 있게 해준다. 인덱스 시그니처 (Index Signatures) 인덱싱 시그니처는 객체 타입에 대해서 키와 값을 지정하는 문법으로 인터페이스에서 인덱싱 가능 타입을 정의하려면 인덱스 시그니처를 사용한다.이 시그니처는 특정 타입의 키에 대응되는 값을 정의 할 수 있도록 해준다. 인덱싱 시그니처는 인터페이스 내부에 작성하게 되는 부분을 지칭하는데 우선 인덱스 시그니처를 사용해서 생성한 인터페이스의 예시를 한번 보자면 interface IndexingSignature { [k..
2024.12.19 -
TypeScript에 대한 간단한 정리 - 05. 인터페이스 - 기본 , 함수 타입
타입스크립트에서 인터페이스(Interface)란 객체의 구조를 정의하는 타입 시스템의 일부이다.인터페이스를 통해서 객체가 가질 속성과 메서드의 타입을 지정할 수 있도록 한다. 인터페이스를 구성하는 방법은 interface 인터페이스명 { 속성명1: 타입1; 속성명2: 타입2; . . . .}과 같이 선언한다.여기서 해당 속성은 어떤 타입으로 선언되어야 하는지에 대한 설정이 포함되어 있다.그리고 보통 인터페이스 명의 첫글자는 대문자로 파스칼 케이스로 선언을 해준다. 실 사용의 예시로 보자면 이렇게 단순 속성 뿐만 아니라 함수 속성에 대해서도 타입을 지정할 수 있다.이 객체를 사용하는 방법은 const 변수명 : 인터페이스명 = { 속성명1: (속성1 타입에 맞는) 값1, 속성명2..
2024.12.18