A Developing Developer

DAY 46. TypeScript 2일차 본문

내일배움캠프 4기/TIL

DAY 46. TypeScript 2일차

H-JJOO 2023. 1. 17. 21:19
  • 문제발생

TypeScript 기본문법

 

  • 시도

J 튜터님 유트브 강의

 

  • 해결방안

J 튜터님 유트브 강의

 

  • 알게 된 것

[알고리즘]

- Math.floor : 주어진 숫자를 내림해서 정수를 반환한다.

- join() : 배열의 모든 요소를 연결해 하나의 문자열로 만든다.

 

[강의]

- String.prototype.substring() : string 객체의 인덱스로부터 종료 인덱스 전 까지 문자열의 부분 문자열을 반환한다.

Ex)

const str = 'Mozilla';

console.log(str.substring(1, 3));
// Expected output: "oz"

console.log(str.substring(2));
// Expected output: "zilla"

 - TypeScript 기본 타입

  • Boolean : True / False
  • Number : 숫자
  • String : 문자열, string 으로 표현, 템플릿 문자열 : 백틱(`) ${} 표현식이 가능하다.
  • Array : 배열, 첫번째 방법은 타입 뒤에 [], 두번째 방법은 제네릭인데 Array<Type> 형태이다.
  • Tuple : 배열과 비슷하나 요소의 타입과 개수가 고정된 배열 표현이다.
  • Enum : 열거, JavaScript 의 표준 자료형 집합과 사용하면 도움이 될 데이터 형이다. 기본적으로 0 부터 시작하나 원하는 번호로 시작점을 바꿀 수 있다.
  • Any : 알지 못하는 타입을 표현할때 사용, TypeScript 사용의미가 없어지기때문에 왠만하면 사용X
  • Void : 리턴 값이 없다. 유용X
  • Null and Undefined : 변수들에 할당할 수 있는 값이 없음을 의미, undefined 와 null 도 타입이자 값이지만 유용X
  • Never : never를 반환하는 함수는 함수의 마지막에 도달 할 수 없다. (throw, while(true), )
  • Object : 원시타입이 아닌 나머지 타입 (원시타입 : number, string, boolean, bigint, symbole, null, undefined
  • Type assertions : 컴파일러에게 "날 믿어, 내가 뭘 하고 있는지 알아" 라고 말해주는 방법으로 as 문법이 유용하다.

- 인터페이스

: 상호 간에 정의한 약속 혹은 규칙

  • 함수의 매개변수를 interface 로 미리 지정하여 필수적인 속성(Property)없이는 run 하지 못하게한다.
  • 선택적 프로퍼티(Optional Properties) : 속성(Property) 이름 뒤에 ? 를 붙혀서 사용하고, 사용 유무를 선택할 수 있게 한다.
  • 읽기전용 프로퍼티(Readonly Properties) : 속성(Property) 이름 앞에 readonly 를 붙혀서 사용하고, 읽기만 가능하고 수정은 불가능하게 한다.
  • 함수 타입 : 함수의 인자의 타입과 반환 값의 타입을 지정한다.
  • 클래스 타입 : 클래스가 일정 조건을 만족하도록 타입 규칙을 지정한다.
  • 인터페이스 확장 : Class 상속하는 것 처럼 상속하여 상위 인터페이스의 속성(Property) 를 하위 인터페이스에서 extends 하면 사용가능하고, 다중 상속도 가능하다.

 

[결론]

 

갈길이 멀다...
 

'내일배움캠프 4기 > TIL' 카테고리의 다른 글

DAY 48. TypeScript 4일차  (0) 2023.01.19
DAY 47. TypeScript 3일차  (1) 2023.01.18
DAY 45. TypeScript 1일차  (0) 2023.01.16
DAY 44.  (0) 2023.01.16
DAY 43. 진수 변환  (0) 2023.01.12