Copying properties
Now, let's try a slightly different approach. Since inheritance is all about reusing code, can you simply copy the properties you like from one object to another? Or from a parent to a child? Keeping the same interface as the preceding extend()
function, you can create a extend2()
function, which takes two constructor functions and copies all the properties from the parent's prototype
to the child's prototype
. This will, of course, carry over methods too, as methods are just properties that happen to be functions:
function extend2(Child, Parent) { var p = Parent.prototype; var c = Child.prototype; for (var i in p) { c[i] = p[i]; } c.uber = p; }
As you can see, a simple loop through the properties is all it takes. As with the ...
Get Object-Oriented JavaScript - Third Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.