Skip to content

Udemy/Ts/section2/16 #20

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 24 commits into from
Aug 31, 2024
Merged

Udemy/Ts/section2/16 #20

merged 24 commits into from
Aug 31, 2024

Conversation

4BFC
Copy link
Member

@4BFC 4BFC commented Aug 31, 2024

✍Udemy/Ts/section2/16

본 PR은 청강 1회독을 마친 후 N회독으로 작성된 PR입니다.

🔥KeyWord

  • 객체 정의
  • 객체 타입 정의
  • { },;의 차이

📝Description

  • 객체(Object) 정의
  • TypeScript로 객체(Object)로 접근하기
    • 🐛: object로 타입을 지정하면 일반적인 객체로 접근할 수 없다는 error가 발생한다.
    • 우리가 정의한 객체를 : object 타입으로 지정을 하고 console.log(person.name);으로 접근하면 error를 발생시킨다. 이유는 Object 타입은 일반적인 객체를 나타내는 타입이다. 즉, object 타입으로 선언된 변수는 해당 변수에 어떤 속성이나 메서드가 있는지 TypeScript가 알 수 없기 때문에 특정 속성(name)에 접근하려고 하면 오류가 발생한다.
  • Object 타입의 error 해결 방안(Object 타입의 속성에 접근 방법)
    • 🚩: 재활용을 가능한 객체 타입 정의 방법과 객체 정의와의 차이
    • Object 타입은 { }와 같은 의미이다. 즉, { }는 객체 구조를 의미하며 일반적인 객체를 정의하는 방식이 아닌 객체 타입으로 정의 해야한다. 따라 객체 타입으로 정의를 하기 위해서는 ,가 아닌 ;을 할당 후 뒤에 붙혀야한다. 객체 타입으로 정의하면 정의한 객체 타입을 재활용할 수 있게 된다.

📌Summary

  • 객체 타입 정의 방식과 객체 정의 방식의 차이를 직접 비교 실습하며서 둘의 차이를 이해했다. 더불어서 객체 타입 정의를 통해서 interface가 생겨난 이유와 이 둘의 연관성을 조금은 엿볼 수 있었다. 하지만 타입스크립트에 object라는 타입이 왜 존재하는지는 아직 이해하진 못했다.

4BFC and others added 24 commits August 27, 2024 01:50
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 작성한 커밋입니다.
Github에서 작성한 커밋입니다.
Github에서 수정한 커밋입니다.
Github에서 수정한 커밋입니다.
@4BFC 4BFC added the 2회독 회독 label Aug 31, 2024
@4BFC 4BFC added this to the Udemy:TypeScript milestone Aug 31, 2024
@4BFC 4BFC self-assigned this Aug 31, 2024
@4BFC 4BFC merged commit 217ca7b into UdemyTs Aug 31, 2024
4BFC added a commit that referenced this pull request Aug 31, 2024
* 🚩: udemy section2의 14번 강의를 듣고 실습을 했다.

* 🔀: Udemy/Ts/section2/14 (#18)

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱: issue templates 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🚩: udemy section2의 14번 강의를 듣고 실습을 했다.

* 🔀: Udemy/Ts/section15 (#19)

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱: issue templates 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🚩: udemy section2의 14번 강의를 듣고 실습을 했다.

* 🚩: udemy section2의 15강의를 듣고 실습을 했다. 타입 할당과 타입 추론을 학습했다.

* 🔀: Udemy/ts/section2/15 (#21)

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱: issue templates 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🚩: udemy section2의 14번 강의를 듣고 실습을 했다.

* 🚩: udemy section2의 15강의를 듣고 실습을 했다. 타입 할당과 타입 추론을 학습했다.

* 🔀: Udemy/Ts/section2/16 (#20)

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱: issue templates 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🚩: udemy section2의 14번 강의를 듣고 실습을 했다.

* 🚩: 객체와 추론 객체 타입의 차이

* 🐛: object로 타입을 지정하면 일반적인 객체로 접근할 수 없다는 error가 발생한다.

* 🚩: 재활용을 가능한 객체 타입 정의 방법과 객체 정의와의 차이

* 🔀: Udemy/Ts/section2/18 (#22)

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱: issue templates 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🚩: udemy section2의 14번 강의를 듣고 실습을 했다.

* 🚩: Udemy section2의 18번 강의를 듣고 배열 타입을 실습해보고 for of를 통한 타입 추론 방식과 일반 적인 map 방식으로 배열 요소에 접근하는 방법을 실습해봤다.

* 🔀: Udemy/Ts/section2/19 (#23)

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱:  README을 수정

Github에서 수정한 커밋입니다.

* 🌱: issue templates 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 생성

Github에서 작성한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🌱: pr-template 수정

Github에서 수정한 커밋입니다.

* 🚩: udemy section2의 14번 강의를 듣고 실습을 했다.

* 🚩: tuple은 유니온 타입으로 되어 있어서 두가지 타입으로 재할당 할 수 있다.

* 🐛: tuple이 number와 string으로 구성 되어 있다해서 이와 같이 한 쌍을 구성하면 객체에 접근했을 때 오류가 발생한다.

* 🐛: tuple을 잘못사용하는 예시

* 🚩: 타입추론방식에서 지정해준 방식으로 타입 객체로 할당했을 때 role은 tuple로 인정하지 않고 유니온 타입 배열로 인식한다.

* 🚩: 전역상수를 이용한 role의 값 변경하기

* 🐛: error TS2367 role: Role.ADMIN이 TS에선 변하지 않아야 하는 값으로 인식하면서 발생한 에러

* 🚩: enum에 값을 할당해서 +1씩 증가하게 되며 원하는 초기값으로 할당이 가능하다.

* 🚩: number 타입 뿐만 아니라 string 타입으로 초기화할 수 있다.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2회독 회독
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant