프로토타입 함수

프로토타입(Prototype)의 사전적 의미는 '원형'입니다. 자바스크립트에서 '원형'은 객체 생성자 함수를 의미합니다. 프로토타입을 사용하여 등록한 함수는 원형(객체 생성자 함수)에서 생성된 객체를 공유할 수 있습니다. 즉, 여러개의 함수를 등록할 필요가 없습니다.

프로토타입 함수

function 함수명( 매개변수1, 매개변수2, ....){ this.속성명 = 새 값; } 함수명.prototype.함수명 = function( ) { 자바스크립트 코드; } let 참조 변수(인스턴스 네임) = new 함수명( );

function CheckWeight(name, height, weight){
    this.userName = name;
    this.userHeight = height;
    this.userWeight = weight;
    this.minWeight;            
    this.maxWeight;            
}
CheckWeight.prototype.getInfo = function(){
    let str = "";
    str += "이름: " + this.userName + ", ";
    str += "키: " + this.userHeight + ", ";
    str += "몸무게: " + this.userWeight + "<br>";
    return str;
}
CheckWeight.prototype.getResult = function(){
    this.minWeight = (this.userHeight - 100) * 0.9 - 5;
    this.maxWeight = (this.userHeight - 100) * 0.9 + 5;

    if(this.userWeight >= this.minWeight && this.userWeight <= this.maxWeight){
        return "정상 몸무게입니다.";
    } else if(this.userWeight < this.minWeight) {
        return "정상 몸무게보다 미달입니다.";
    } else {
        return "정상 몸무게보다 초과입니다.";
    }
}

let hong = new CheckWeight("고부기", "175", "80");
document.write(hong.getInfo());
document.write(hong.getResult());

Last updated

Was this helpful?