Aufrufer-Funktionsidentifizierung in JavaScript
In JavaScript können Sie mit der Caller-Eigenschaft einer Funktion den Namen der Funktion abrufen, die sie aufgerufen hat . Diese Eigenschaft gilt jedoch als veraltet und wird nicht mehr empfohlen.
function main() { Hello(); } function Hello() { // How do you find out the caller function is 'main'? }
Aufrufstapel finden
Um den Aufrufstapel zu ermitteln, können Sie arguments.callee verwenden .caller.toString(), aber auch dies ist veraltet. Beachten Sie, dass diese Lösung nicht dem Standard entspricht und möglicherweise nicht in allen Browsern oder JavaScript-Implementierungen funktioniert.
Veraltete Lösung
function Hello() { alert(`caller is ${arguments.callee.caller.toString()}`); }
Moderne Lösung
Eine modernere Lösung ist die Verwendung von new Error().stack.
function Hello() { console.log(new Error().stack); }
Dies gibt den Stack-Trace aus, der den Namen der Aufruferfunktion enthält.
Wichtiger Hinweis:
Die Caller-Eigenschaft und arguments.callee.caller.toString() sind veraltet und sollte nicht für Produktionscode verwendet werden. Verwenden Sie immer die neue Error().stack-Lösung zum Abrufen des Aufrufstapels.
Das obige ist der detaillierte Inhalt vonWie kann ich die Aufruffunktion in JavaScript zuverlässig identifizieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!