Ich wollte in das sprachspezifische Konstrukt "Prototyp" von Javascript eingraben. Und hier ist mein Lernen Zweck Code:Firebug zeigt unendliche Rekursion für Konstruktor
var f = function() {};
f.ext = 1;
f.prototype.pext = 2;
Wenn ich diesen Code debuggen jetzt mit Firebug, erhalte ich folgendes:
Wo kommt diese unendliche Verschachtelung kommen aus? Lassen Sie sich von oben beginnen (OK = unterstood):
f (OK)
- ext (OK)
- Prototyp (OK)
- pext (OK)
- Konstruktor (Ich bin fest an Dieser Punkt)
Wessen Konstruktor ist das? Und warum haben wir diese Infinite Nesting?
Ich denke es liegt daran, dass der Prototyp einer anonymen Funktion eine anonyme Funktion ist. Da Sie eine Eigenschaft auf den Prototyp der Funktion setzen, wird diese Eigenschaft auf den Prototyp der Funktion gesetzt, der eine Eigenschaft auf den Prototyp der Funktion setzt. Nicht sicher, obwohl :) – Flauwekeul