Le concept de récupération du nom de la fonction en cours d'exécution a été une question brûlante pour les programmeurs naviguant dans JavaScript paysage. Cet article explore les possibilités et les aspects pratiques de cette tâche apparemment simple.
Limitations dans ES5 et versions ultérieures
À partir d'ES5, JavaScript ne fournit plus d'accès direct au nom de la fonction en cours d’exécution. Cette limitation provient de la tentative du langage d'empêcher les codes malveillants de manipuler la pile d'appels.
Accès au nom de la fonction dans les anciennes versions de JavaScript
Avant ES5, les développeurs pouvaient exploitez la propriété arguments.callee pour extraire le nom de la fonction appelante. Cependant, cette approche présentait quelques inconvénients :
Analyse du nom de la fonction
Pour purifier le nom de la fonction de toute information supplémentaire, certaines implémentations JavaScript fournissent la propriété arguments.callee.name. Dans les cas où cette méthode n'est pas disponible, les développeurs peuvent utiliser la technique d'analyse suivante :
<code class="javascript">function DisplayMyName() { var myName = arguments.callee.toString(); myName = myName.substr('function '.length); myName = myName.substr(0, myName.indexOf('(')); alert(myName); }</code>
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!