var g = newGlobal({newCompartment: true});
g.debuggeeGlobal = this;
g.eval("var hits = 0;");
g.eval("(" + function () { var a = []; var dbg = Debugger(debuggeeGlobal);
dbg.onDebuggerStatement = function (frame) { var loc = debuggeeGlobal.loc;
a[loc] = frame; for (var i = 0; i < a.length; i++) {
assertEq(a[i] === frame, i === loc);
assertEq(!!(a[i] && a[i].onStack), i >= loc);
}
hits++;
};
} + ")()");
function f(n) {
loc = n; debugger; if (n !== 0) {
f(n - 1);
loc = n; debugger;
eval("f(n - 1);");
loc = n; debugger;
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.