# 프로토타입 함수

### 프로토타입 함수

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

```javascript
function CheckWeight(name, height, weight){
    this.useName = name;
    this.useHeight = height;
    this.useWeight = weight;
    this.minWeight;
    this.maxWeight;

}
CheckWeight.prototype.getInfo = function(){
    let str = "";
    str += "이름:" + this.useName + ", ";
    str += "키:" + this.useHeight + ", ";
    str += "몸무게:" + this.useWeight + ", ";
    return str;
}

CheckWeight.prototype.getResult = function(){
    this.minWeight = (this.useHeight - 100) * 0.9 - 5;
    this.maxWeight = (this.useHeight - 100) * 0.9 + 5;

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

let hwang = new CheckWeight("정현","180","80");

document.write(hwang.getInfo());
document.write(hwang.getResult());
```

### 7. 함수가 실행되었습니다.

```javascript
function func7(num1,str1,str2){
        this.youNum = num1;
        this.youStr1 = str1;
        this.youStr2 = str2;
}
    func7.prototype.result = function(){
        let str = "";
            str += this.youNum + ".";
            str += this.youStr1 + "가";
            str += this.youStr2 + "실행되었습니다.";
            return str;
}
let javas = new func7(7, "함수", "실행");
document.write(javas.result());
```
