자바스크립트 중급 강좌 (생성자 함수)

히대·2023년 11월 9일

Javascript

목록 보기
12/28

생성자 함수

객체 리터럴

let user = {
	name : "Mike",
    age : 30
}

생성자 함수는 비슷한 객체를 여러개 만들때 쓰임(회원, 상품 등)

function User(name, age){ 생성자 함수는 대부분 첫글자가 대문자
	this.name = name;
    this.age = age;
}

let user1 = new User("Mike",30); new 연산자를 사용해서 호출
let user2 = new User("Jane",22);
let user3 = new User("Tom",17);

function User(name, age){
	this = {} // 실제로 얘네는 쓰지않지만 이런식으로 작동됨
    
	this.name = name;
	this.age = age;
    
    return this; // 실제로 얘네는 쓰지않지만 이런식으로 작동됨
}

new 함수명();

function User(name,age){
	this.name = name;
    this.age = age;
	this.sayName = function(){
    	console.log(this.name); 여기서의 this 는 user5가 됨 
        						만약 user6까지 있다면 둘다 출력되는듯 함
    }
}

let user5 = new User ("Han" , 40);
user5.sayName(); // "Han"가 출력 
function Item(title, price){
	this.title = title;
	this.price = price;
	this.showPrice = function(){
    	console.log("가격은 $(price)원 입니다.");
    }
}

const item1 = new Item("인형",3000);
const item2 = Item("가방",4000); 만약 new를 안붙히면 
								그냥 함수가 실행되기 때문에 undefined 출력
const item3 = new Item("지갑",9000);

console.log(item1, item2, item3); // 모두 출력

item1.showPrice(); // 가격은 3000원 입니다. 출력
profile
아자아자 파이팅🔥

0개의 댓글