[프론트엔드 데브코스 TIL] 2023.11.12 일요일 TIL

SoJuSo·2023년 11월 12일
0

2023.09 ~ 2024.01 TIL

목록 보기
40/105

📚금일 학습 내용 KPT

인터페이스, 인덱싱 기능, 타입 + 확장 그리고 this타입 등등..
TS 스터디 정리.

밤이 늦었으니 간단히

🏫데브코스

📌인터페이스

type UserT = {
  name: string;
  readonly age: number;
  //   이렇게 타입 별칭에서도 ? 키워드를 사용할 수 있다.
  isValid?: boolean;
};
// 타입 별칭과 인터페이스의 차이
// 일단 키워드가 다르다. 이름을 지을 수 있지만 type 별칭은 할당연산자(=) 이 있지만 인터페이스는 없다.
//
interface UserI {
  // 쉼표나 세미콜론으로 구분해도 되는데 없어도 된다.
  name: string;
  readonly age: number;
  //   isValid: boolean; // 이건 에러가 나지만
  isValid?: boolean; // 이렇게 물음표를 넣어주면 아래 코드에서 에러가 나지 않는다.
}

📌인터페이스 확장

interface User {
  name: string;
  age: number;
}

// 엥..? 이렇게 그냥 된다고..?
// 그냥 알아서 확장된다
// 즉, 중복선언이 가능하고 합쳐(병합)진다.
interface User {
  isValid: boolean;
}

📌타입스크립트에서 this

// this: User으로 this의 타입은 User야 라고 `명시`해주는 것이다.
// 아~ this에 대한 타입을 여기서 결정하려나보다~
// 우리가 직접 작성해서 TS에게 알려준다. 그래서 명시적 this타입이다.
// 이런 경우가 종종 있어요~
function greet(this: User, msg: string) {
  // 이런 암시적으로 에러가 나는 타입은 문제를 야기한다.
  // 그래서 이 this가 무엇인지 우리는 얘한테 알려줘야한다!
  return `Hello ${this.name}, ${msg}`;
}

📖소회

많은 걸 하지 않았다. 곧 방학이고 강의도 얼마 안남아서 싱숭생숭해서 그런 것 같은데 마음을 잘 잡자. 해야 할 게 많다. 그래도 주말동안 코딩 안놨다. 헤헤

내일도 잘해봅시다.🔥 그리고..

T1 우승 가즈아~ 징동 따운 lpl 비상 고척돔 나와 뉴진스 나와
어느 스포츠나 최고의 선수들 간 경쟁에는 감동이 있다. 나도 저렇게 열심히 해야지!

TIL 작성 소요시간 약 10분

profile
Junior Frontend Engineer

0개의 댓글