Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript의 함수 프로토타입

<시간/>

JavaScript로 생성된 함수에는 항상 JavaScriptengine에 의해 추가된 prototype 속성이 있습니다. 프로토타입 속성은 기본적으로 생성자 속성을 포함하는 객체입니다. 함수 프로토타입은 −

를 통해 액세스할 수 있습니다.
functionName.prototype

함수 생성자를 사용하여 객체를 생성할 때 이 프로토타입 속성을 사용하여 해당 함수 생성자가 생성한 객체 간에 메서드 또는 속성을 공유할 수 있습니다.

다음은 JavaScript의 함수 프로토타입에 대한 코드입니다. -

예시

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
   body {
      font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
   }
   .result {
      font-size: 20px;
      font-weight: 500;
      color: blueviolet;
   }
</style>
</head>
<body>
<h1>Function prototypes in JavaScript</h1>
<div class="result"></div>
<br />
<button class="Btn">Click Here</button>
<h3>Click on the above button to call the welcome method of person1 and person2 object</h3>
<script>
   let resEle = document.querySelector(".result");
   let BtnEle = document.querySelector(".Btn");
   function personConstructor(fName, lName) {
      this.fName = fName;
      this.lName = lName;
   }
   personConstructor.prototype.welcome = function () {
      return "Welcome " + this.fName + " " + this.lName;
   };
   let person1 = new personConstructor("Rohan", "Sharma");
   let person2 = new personConstructor("Shawn", "Smith");
   BtnEle.addEventListener("click", () => {
      resEle.innerHTML = "person1.welcome() = " + person1.welcome() + "<br>";
      resEle.innerHTML += "person2.welcome() = " + person2.welcome() + "<br>";
   });
</script>
</body>
</html>

출력

JavaScript의 함수 프로토타입

'여기를 클릭' 버튼을 클릭하면 -

JavaScript의 함수 프로토타입