// Ensure |Frame.this| returns the right value even if we're still in the // script's prologue, before JSOP_FUNCTIONTHIS.
var g = newGlobal({newCompartment: true}); var dbg = new Debugger(g); var hits = 0;
dbg.onEnterFrame = function (frame) { if (frame.type === 'eval') return;
hits++;
var frameThis = frame.this; if (frameThis !== null && typeof frameThis === "object")
g.gotThis = frameThis.unsafeDereference(); else
g.gotThis = frameThis;
assertEq(frame.this, frameThis, "getter should not return a different object");
};
// Non-strict mode (primitive |this| is boxed), function doesn't use |this|.
g.eval("function nonstrictfunNoThis() {}");
g.eval("nonstrictfunNoThis.call(Math); assertEq(gotThis, Math);");
g.eval("nonstrictfunNoThis.call(null); assertEq(gotThis, this);");
g.eval("nonstrictfunNoThis.call(); assertEq(gotThis, this);");
assertEq(hits, 12);
Messung V0.5 in Prozent
¤ 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.0.21Bemerkung:
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-08-26)
¤
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.