Maison > interface Web > js tutoriel > le corps du texte

Comment obtenir dynamiquement le nom de la fonction actuelle en JavaScript ?

Susan Sarandon
Libérer: 2024-10-21 15:27:30
original
555 Les gens l'ont consulté

How to Dynamically Get the Name of the Current Function in JavaScript?

Obtention du nom de la fonction actuelle en JavaScript

Pouvez-vous accéder dynamiquement au nom de la fonction en cours d'exécution en JavaScript ?

Description du problème

Considérons l'exemple suivant :

<code class="javascript">myfile.js:

function foo() {
    alert(<my-function-name>);
    // pops-up "foo"
    // or even better: "myfile.js : foo"
}</code>
Copier après la connexion

Le but est de récupérer le nom de la fonction et éventuellement son emplacement complet (filename:function-name ). Est-ce réalisable ?

Solution

Dans ES5 et versions ultérieures : Malheureusement, il n'existe aucun mécanisme intégré pour obtenir le nom de la fonction dans ES5 et versions ultérieures.

Dans les anciennes versions de JavaScript : Dans les versions antérieures de JavaScript, il était possible d'accéder au nom de la fonction à l'aide de arguments.callee. Cependant, cette approche peut nécessiter une analyse car la valeur renvoyée peut inclure des informations superflues.

Approche d'analyse :

<code class="javascript">function DisplayMyName() {
    var myName = arguments.callee.toString();
    myName = myName.substr('function '.length);
    myName = myName.substr(0, myName.indexOf('('));

    alert(myName);
}</code>
Copier après la connexion

Source : [ Javascript - obtenir le nom de la fonction actuelle](https://stackoverflow.com/questions/4267180/javascript-get-current-function-name)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!