클래스의 기본
class Fruit {
constructor(name, emoji) {
this.name = name;
this.emoji = emoji;
}
display = () => {
console.log(`${this.name}: ${this.emoji}`);
};
}
const apple = new Fruit('apple', '🍎');
const orange = new Fruit('orange', '🍊');
const obj = { name: 'ellie' };
- 클래스를 이용해서 만드는 객체의 필요한 데이터를 채워 줄 수 있는 constructor라는 걸 지정 해줘야한다.
- 함수는 생성자(constructor)안에다 써도 무방은 하지만 , 생성자 밖에다가 정의 하고 this를 따로 쓸 필요는 없다. 그리고 function 이라고 쓰면 에러가 발생한다. 하지만 화살표 함수는 예외이다.
- class 키워드를 이용해서 클래스를 만들 수 있고 각 각의 클래스에는 생성자 함수가 있고, new키워드로 객체를 생성 할 때 생성자 함수가 호출이 되고, 생성자에는 우리가 객체로 만드는데 필요한 데이터를 인자로 받아 올 수 있도록 함수 형태와 비슷하다.
필요한 데이터를 외부에서 받아 올 수 있도록 생성자를 쓴다.
생성자 안에서는 객체를 this로 링크 작업을 한다.또 객체 안에서 사용하는 멤버 함수가 있다면 이름 아니면 화살표 함수를 사용해서 작성 해주면 된다.
- 어떤 클래스를 통해서 만들어진 객체 라면 인스턴스라고 부른다.