Javascript
Class (+constructor 생성자함수)
becky(지은)
2023. 3. 11. 21:54
Class는 뭐다?
constructor 메소드를 사용해 보다 쉽게 객체를 만드는 공장!
prototype 기반의 객체를 만드는 공장이 있고, (보기쉬움) class 기반의 객체를 만드는 공장이 있다.
// 생성된 객체를 어떻게 초기화?
// 먼저 실행되도록 만들어진 constructor 함수를 class 내에서 구현
class Person {
constructor(name, first, second){
this.name =name;
this.first=first;
this.second=second;
}
sum=()=>{
return 'class : '+(this.first+this.second);
}
}
let kim = new Person('kim',10,20);
kim.sum = function(){
return 'this : '+(this.first+this.second);
}
let lee = new Person('lee',10,10);
console.log("lee.sum()",lee.sum());// 만약 자신(lee)이 sum이라는 객체를 가지지 않는다면,class의 constructor메소드를 따라간다,끝
console.log("kim.sum()",kim.sum());// 먼저 자신(kim)이 sum이라는 객체를 가졌는지를 찾는다, 끝
// lee.sum() class : 20
// kim.sum() this : 30