หากต้องการเพิ่มคุณสมบัติ (properties) และเมธอด (methods) ให้กับออบเจ็กต์ใน JavaScript ให้ใช้คุณสมบัติ prototype
ตัวอย่าง
ลองรันโค้ดด้านล่างเพื่อเรียนรู้การทำงานกับ prototype:
<html>
<head>
<title>JavaScript prototype property</title>
<script>
function book(title, author) {
this.title = title;
this.author = author;
}
</script>
</head>
<body>
<script>
var myBook = new book("Amit", "Java");
book.prototype.price = null;
myBook.price = 500;
document.write("Book title is : " + myBook.title + "<br>");
document.write("Book author is : " + myBook.author + "<br>");
document.write("Book price is : " + myBook.price + "<br>");
</script>
</body>
</html>
คำอธิบาย: prototype เป็นกลไกการสืบทอด (inheritance) ของ JavaScript การเพิ่มคุณสมบัติ/เมธอดให้ book.prototype จะทำให้ทุกอินสแตนซ์ที่สร้างจาก book เข้าถึงได้ (shared) ในตัวอย่าง เพิ่ม price ให้ prototype แล้วตั้งค่าให้ myBook.price = 500 (สร้าง own property ทับ prototype)