November 2001
Intermediate to advanced
936 pages
68h 43m
English
Object.isPrototypeOf( ) — is one object the prototype of another?
JavaScript 1.5; JScript 5.5; ECMAScript v3
object.isPrototypeOf(o)
o
Any object.
true if object is the
prototype of o. Returns
false if o is not an
object or if object is not the prototype
of o.
As explained in Chapter 8, JavaScript objects
inherit properties from their prototype object. The prototype of an
object is referred to by the prototype property of
the constructor function used to create and initialize the object.
The isPrototypeOf( ) method provides a way to
determine if one object is the prototype of another. This technique
can be used to determine the class of an object.
var o = new Object( ); // Create an object Object.prototype.isPrototypeOf(o) // true: o is an object Function.prototype.isPrototypeOf(o.toString); // true: toString is a function Array.prototype.isPrototypeOf([1,2,3]); // true: [1,2,3] is an array // Here is a way to perform a similar test (o.constructor == Object); // true: o was created with Object( ) constructor (o.toString.constructor == Function); // true: o.toString is a function // Prototype objects themselves have prototypes. The following call // returns true, showing that function objects inherit properties // from Function.prototype and also from Object.prototype. Object.prototype.isPrototypeOf(Function.prototype);