"Objects have ""prototypes"" from which they may inherit fields and functions.
<s-cript type=""text/j-avascript"">
function movieToString() {
return(""title: ""+this.title+"" director: ""+this.director);
}
function movie(title, director) {
this.title = title;
this.director = director || ""unknown""; //if null assign to ""unknown""
this.toString = movieToString; //assign function to this method pointer
}
movie.prototype.isComedy = false; //add a field to the movie's prototype
var officeSpace = new movie(""OfficeSpace"");
var narnia = new movie(""Narni"",""Andrew Adamson"");
document.write(narnia.toString());
document.write(""
Narnia a comedy? ""+narnia.isComedy);
officeSpace.isComedy = true; //override the default just for this object
document.write(""
Office Space a comedy? ""+officeSpace.isComedy);
</script>
"