Book Image

Object-Oriented JavaScript

By : Stoyan Stefanov, Stoyan STEFANOV
Book Image

Object-Oriented JavaScript

By: Stoyan Stefanov, Stoyan STEFANOV

Overview of this book

Table of Contents (18 chapters)
Object-Oriented JavaScript
About the Author
About the Reviewers
Built-in Functions
Regular Expressions

The prototype Property

The functions in JavaScript are objects and they contain methods and properties. Some of the methods that you are already familiar with are apply() and call() and some of the properties are length and constructor. Another property of the function objects is prototype.

If you define a simple function foo() you can access its properties as you would do with any other object:

>>> function foo(a, b){return a * b;}
>>> foo.length


>>> foo.constructor


prototype is a property that gets created as soon as you define the function. Its initial value is an empty object.

>>> typeof foo.prototype


It's as if you added this property yourself like this:

>>> foo.prototype = {}

You can augment this empty object with properties and methods. They won't have any effect of the foo() function itself; they'll only be used when you use foo() as a constructor.

Adding Methods and Properties Using the Prototype...