본 내용은 동기들에게 설명해줄때 사용했던 방법을 그대로 썻습니다
참조 : 유튜브 코딩애플, 앙마코딩
내가 홈페이지를 만들었는데
알고리즘에 의해서 너무 흥행을 한다고 생각해보자
처음에는 객체로 하나하나 만들겠지만 그것도 힘들 상황이 올것이다
그때 비슷한 객체를 엄청 만들어주는 생성자 함수를 사용한다
만드는 법은 간단하다
function User() {
// 함수 객체
}
유의 해야할 점은 생성자 함수임을 알려주기 위해서 첫글자를 대문자로 써야한다
user이라는 생성자 함수를 붕어빵 틀이라고 생각해보자
this.name = name;
this.age = age;
이것은 붕어빵 반죽이다
반죽을 틀에다가 부어보자
function User() {
this.name = 'mike';
this.age = 20;
}
this라는 것은 user가 만들어낼 여러가지 맛의 붕어빵들을 가리킨다
=> 즉 user라는 생성자 함수가 만들어낼 비슷한 객체들을 가리킨다
그 객체의 이름을 마이크로, 그 객체의 나이를 20으로 해달라는 것
그러면 반죽도 완성이 되었으니 팥붕을 만들어보자
(필자는 팥붕파다)
function User() {
this.name = 'mike';
this.age = 20;
}
let user1 = new User()
let user2 = new User()
팥붕어빵을 두개 만들었다
물론 팥붕이 근본이지만 그것만 있으면 손님이 오지 않을 것이다
그래서 붕어빵 틀을 업그레이드 시켜보자
function User(name , age) {
this.name = name;
this.age = age;
}
let user1 = new User('mike',20)
let user2 = new User('jane',30)
user가 만드는 객체의 이름은 name 이라는 매개변수로 받은 값으로
age는 age라는 매개변수로 받은 값으로 설정해 주라고 적어놓는다면
비슷한 객체가 몇개가 있어도 문제가 없다
팥붕,슈붕,야채붕,피자붕 등등 원하는거 다 만들수가 있다
추가적으로 class에 대해서 알려주겠다
class User {
constructor(name , age){
this.name = name;
this.age = age;
}
}
신식 문법이다 생성자 함수와 같다
객체지향 프로그래밍에서 많이 쓴다고 하는데 나는 현재 함수형 프로그래밍을 배우고 있어서
깊게 배우지 않았다
다음 프로토타입에서 왜 생성자 함수를 배웠는지 알게 될것이다