각각의 instance는 그 class의 고유한 property와 method를 같습니다.
나는 옷을 만드는 사람이다.
난 아래와 같은 옷을 만들어 판다.
let redShirt = { color : 'red' , buttons : true };
빨간 셔츠의 인기가 좋아서 같은 디자인이지만 다른 색상의 셔츠를 만들고 싶다.
다른 색상의 셔츠를 만드는 공장을 섭외했고 아래와 같이 주문을 넣었다.
//class 만들기 (ES6)
class 셔츠공장 {
constructor(color,buttons){ // 생성자 함수 만들기
this.color = color;
this.buttons = buttons;
}
}
let blueShirt = new 셔츠공장 ('blue', true ); // instance object 만들기
let blackShirt = new 셔츠공장 ('black', true);
//class만들기 (ES5)
function 셔츠공장 (color, buttons) {
this.color = color;
this.buttons = buttons;
}
부자가 된 나는 자동세탁 기능이 있는 옷을 발명했다.
옷에있는 버튼(method)을 누르면 옷이 자동으로 세탁된다.
class 셔츠공장 {
constructor(color,buttons){ // 생성자 함수 만들기
this.color = color;
this.buttons = buttons;
}
autoWash (){ //method 만들기
console.log("세탁 완료")
}
}
blueShirt.autoWash() // "세탁 완료"