Exercises
Lets do the following exercise:
Implement multiple inheritance but with a prototypal inheritance pattern, not property copying. Here is an example:
var my = objectMulti(obj, another_obj, a_third, { additional: "properties" });
The
additional
property should be an own property; all the rest should be mixed into the prototype.Use the
canvas
example to practice. Try out different things. Here are some examples:Draw a few triangles, squares, and rectangles.
Add constructors for more shapes, such as
Trapezoid
,Rhombus
,Kite
, andPentagon
. If you want to learn more about thecanvas
tag, create aCircle
constructor too. It will need to overwrite thedraw()
method of the parent.Can you think of another way to approach the problem and use another type of inheritance?
Pick one of the methods that uses
uber
as a way for a child to access its parent. Add functionality where the parents can keep track of who their children are, perhaps using a property...