1.1

홍왕열·2022년 1월 1일
0

객체지향

기존 함수 Person, 즉 constructor function이 하는 일은 두 가지다.

  1. 객체를 만든다 -> new를 사용하여. ex)new Person() 이걸 constructor라고 한다.
  2. 객체의 초기상태를 정의한다.

객체를 만드는 것.

class


기존 constructor function과 똑같이 class로 똑같은 기능을 하도록 만들 수 있다.

안에 기존처럼 function(){}로 정의하는 것이 아닌, 그냥 constructor(){}로 정의한다.

그리고 위 사진과 같이 그 안에 인자를 넣고 초기값을 사진과 같이 지정한다.

위 파일을 실행시켜 보면 이런식으로 뜬다.
즉, new Person이 실행되면 constructor가 실행이 된다.
즉, 객체가 생성되기 전에 실행되도록 약속된 constructor 함수를 class 내에서 구현한 것이다

method 구현

기존에 prototype을 사용하여 method를 구현하였다.

하지만 class가 생긴 뒤, 기존처럼 그대로 사용하는 방법이 있지만 다른 방법이 생겼다.
class 안에 함수를 넣어 같은 class에 존재하는 모든 객체가 공유하는 함수를 만드는 방식이다.
쓰는 방식도 달라졌다.

이런 식으로 하면 같은 class에서 이 함수를 전부 끌어서 사용할 수 있다.

하지만 중간에 코드를 보면 알 수 있듯이, 만약 kim에게만 특수한 공식을 입히고 싶다면 저런식으로 사용이 가능하다.

우선순위가 바뀌는 것이다

Inheritance(상속)

extends

extends를 사용하여 전에 있던 class 함수를 상속한다.
상속을 하는 이유는 유지 및 보수가 편하다는 장점도 있지만 중복을 제거하면서 기존에 있던 것들을 그대로 쓸 수가 있다.

객체를 만드는 것 기억

super

부모 class의 생성자.
부모 기능을 사용하면서 나만의 기능을 추가로 사용할 때 사용.

자식class에서 constructor를 새로 만들어서 추가하고, 나머지 부모class에 있는 생성자들을 super에 담아 사용할 수 있다.

super()는 부모클래스의 생성자이고 super.은 부모class에 있는 함수를 사용 가능하게 만든다.

defaault parameter, 구조분해할당
map 다시 자세히.
생코 객체지향 18번
async/await 및 비동기 복습하기. 동영상 보면서 개념 다시 정리하기.
피보나치(재귀함수)
callback
react 따라만들기

profile
코딩 일기장

0개의 댓글