<script>
let user = {
name : 'Eden',
age : 20,
}
</script>
이것을 객체 리터럴이라고 한다. 그런데 개발을 하다보면 이렇게 비슷한 객체를 여러 개 만들어야하는 일이 생긴다.
예를 들면 회원 정보, 상품 같은 것을 표현할 때다.
이럴 때 쓸 수 있는 것이 바로 생성자 함수다.
생성자 함수는 보통 첫글자를 대문자로 함수를 만들어 준다.
<script>
function User(name,age) {
this.name = name;
this.age = age;
}
let user1 = new User('Eden', 20)
let user2 = new User('Mia', 26)
let user3 = new User('Elena', 17)
</script>
User함수를 만들었고 name과 age를 인자로 받아서 this에 넣어주고 있다.
그리고 new 연산자를 사용해 함수를 호출한다.
각각 다른 변수 명으로 세 번 연달아서 호출했다. 전달하는 값도 각각 다르게 전달해보았다.
> user1
< >User {name: "Eden", age: 20}
-------------------------------
> user2
< >User {name: "Mia", age: 26}
-------------------------------
> user3
< >User {name: "Elena", age: 17}
-------------------------------
순식간에 비슷한 객체 3개를 만들었다.
생성자 함수는 붕어빵틀이나