caller, propriété
Mise à jour : novembre 2007
Retourne une référence à la fonction qui a appelé la fonction en cours.
function.caller
Arguments
- fonction
Obligatoire. Nom de l'objet Function en cours d'exécution.
Notes
La propriété caller est uniquement définie pour une fonction qui est en cours d'exécution. Si la fonction a été appelée à partir du niveau supérieur d'un programme JScript, la propriété caller a la valeur null.
Si la propriété caller est utilisée dans un contexte de chaîne, le résultat est le même qu'avec functionName.toString, c'est-à-dire que c'est le texte décompilé de la fonction qui est affiché.
Remarque : |
---|
La propriété caller n'est pas disponible en mode rapide, le mode d'exécution par défaut de JScript. Pour compiler un programme à partir de la ligne de commande qui utilise la propriété caller, vous devez désactiver l'option fast en utilisant /fast-. Il est déconseillé de désactiver l'option fast dans ASP.NET en raison des problèmes de threads qui peuvent en résulter. |
Exemple
L'exemple ci-dessous illustre l'utilisation de la propriété caller.
function callLevel(){
if (callLevel.caller == null)
print("callLevel was called from the top level.");
else {
print("callLevel was called by:");
print(callLevel.caller);
}
}
function testCall() {
callLevel()
}
// Call callLevel directly.
callLevel();
// Call callLevel indirectly.
testCall();
Après compilation du programme avec l'option /fast-, le résultat généré par ce programme est le suivant :
callLevel was called from the top level.
callLevel was called by:
function testCall() {
callLevel()
}
Configuration requise
S'applique à :
arguments, objet| Function, objet