I am using the following test code:
function Test() {
}
Test.prototype.MyMethod = {
a: function() {
},
b: function() {
}
}
And to run it I’m simply doing:
var test = new Test();
console.debug(test);
In the firebug console, I expand the object that was printed and look inside of __proto__:
In there find a seemingly unending chain of constructor -> prototype:
+MyMethod
-constructor
-prototype
+MyMethod
-constructor
-prototype
+MyMethod
-constructor
and so on. Did I do something wrong here? Why does the prototype chain seem unending?
prototypes have a property calledconstructorthat refers to the function that owns the prototype.This cycle is by design.