
Object-Oriented JavaScript - Second Edition
By :

The functions in JavaScript are objects, and they contain methods and properties. Some of the methods that you're already familiar with are apply()
and call()
, and some of the other 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; 2 > foo.constructor; function Function() { [native code] }
The prototype
property is a property that is available to you as soon as you define the function. Its initial value is an "empty" object.
> typeof foo.prototype;
"object"
It's as if you added this property yourself as follows:
> foo.prototype = {};
You can augment this empty object with properties and methods. They won't have any effect on the
foo()
function itself; they'll only be used if you call foo()
as a constructor...
Change the font size
Change margin width
Change background colour